函数指针的调起
昨天的代码被更新了,在我传递回调函数的时候,在函数名的前面加入了一个取地址符.
我记得好像不需要这样做的,于是特意做了个实验,代码如下:
#include "stdio.h"
int (*FuncPtr)(int i);
int foo(int i)
{
printf("%d\n", i);
return i;
}
int main()
{
printf("第1次:\n");
FuncPtr = foo;
(*FuncPtr)(1);
printf("第2次:\n");
FuncPtr = &foo;
FuncPtr(1);
printf("第3次:\n");
FuncPtr = &foo;
(*FuncPtr)(1);
}
结果3次全部调用成功.