C常见有关问题之函数指针
C常见问题之函数指针
考虑如下代码:
#include <stdio.h> void show(void) { printf("hello\n"); return; } int main(void) { void (*p)(void) = show; (*p)(); p(); return 0; }
执行结果如下:
hello hello
上述代码需要注意一下几点:
1.函数名本身即为函数的地址
2.用函数指针调用函数时,有无*均可
3.由于()的优先级高于*,故(*p)中的()不可或缺