函数的指针
每一个函数本身也是一种程序数据,一个函数包含了多条执行语句,它被编译后,实质上是多条机器指令的合集。在程序载入到内存后,函数的机器指令存放在一个特定的逻辑区域:代码区。既然是存放在内存中,那么函数也是有自己的指针的。
C语言中,函数名作为右值时,就是这个函数的指针。
void echo(const char *msg) { printf("%s",msg); } int main(void) { void(*p)(const char*) = echo; //函数指针变量指向echo这个函数 p("Hello "); //通过函数的指针p调用函数,等价于echo("Hello ") echo("World "); return 0; }
作者:喜欢编程的狗子
链接:https://zhuanlan.zhihu.com/p/345043534
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
浙公网安备 33010602011771号