2、函数指针:int (*func)(int x,int y);
这里定义了一个函数指针,只不过这个指针的格式有点特殊,正常定义的指针是把指针变量放到最后的,即int* p ;
,p
是指针变量,但是函数指针是把指针变量放到了中间,即func
是指针变量,而且这是一个指向函数的指针变量,而具体指向哪个函数是自己定的。
下面这个例子我定义了一个函数指针指向了int add(int a,int b)
与int sub(int a,int b)
这两个函数。
举个例子:
#include <stdio.h> int add(int a,int b) { return a+b; } int sub(int a,int b) { return a-b; } //函数指针 int (*func)(int a,int b); int main() { func = add; printf("add:%d\n",(*func)(10,5)); func = sub; printf("sub:%d\n",(*func)(10,5)); return 0; }
运行结果:
add:15 sub:5
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233814.html原文链接:https://javaforall.net