void (*stu)(struct student*)这样表示什么意思啊,为什么会这样表示啊,小弟刚学C 求讲解.
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/11 22:58:54
![void (*stu)(struct student*)这样表示什么意思啊,为什么会这样表示啊,小弟刚学C 求讲解.](/uploads/image/z/12725305-25-5.jpg?t=void+%28%2Astu%29%28struct+student%2A%29%E8%BF%99%E6%A0%B7%E8%A1%A8%E7%A4%BA%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%E5%95%8A%2C%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BC%9A%E8%BF%99%E6%A0%B7%E8%A1%A8%E7%A4%BA%E5%95%8A%2C%E5%B0%8F%E5%BC%9F%E5%88%9A%E5%AD%A6C+%E6%B1%82%E8%AE%B2%E8%A7%A3.)
xœN@_eOHC\|" ŘTl!+$jK^fgVA{lv~oRp?&.O]r '7\;ow*fj)u( :
void (*stu)(struct student*)这样表示什么意思啊,为什么会这样表示啊,小弟刚学C 求讲解.
void (*stu)(struct student*)这样表示什么意思啊,为什么会这样表示啊,小弟刚学C 求讲解.
void (*stu)(struct student*)这样表示什么意思啊,为什么会这样表示啊,小弟刚学C 求讲解.
这个是函数指针的用法
stu是一个指向函数的指针,
函数的参数为struct student*,也就是student结构体的指针
函数的返回值为void
stu在声明后需要赋值函数地址
例如这样:
void fstu (struct student* pstu)
{
...
}
void fstu2 (struct student* pstu)
{
...
}
void main()
{
stuct student s_stu;
stu = fstu; // 对函数指针进行赋值,stu指向fstu函数
stu(&s_stu); // 相当于调用fstu(&s_stu)
stu = fstu2; // 对函数指针进行赋值,stu指向fstu2函数
stu(&s_stu); // 相当于调用fstu2(&s_stu)
}
如果还不明白看参考资料中的文章吧