本博客已迁往http://coredumper.cn
考虑如下代码:
#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)中的()不可或缺