函数指针使用
1、利用函数指针调用函数
调用函数的一般形式为: (*指针变量名) (实参表)
定义一个函数指针
int (*fun)(int *p,int len);
fun = getMax; //fun只能赋值一个函数名,并且函数有两个形参(int型指针,int型整数)
int max = fun(a,5);
从上述程序可以看出用,函数指针变量形式调用函数的步骤如下:
1)先定义函数指针变量,如 int (*fun)(int *p,int len); 定义 fun为函数指针变量。
2)把被调函数的入口地址(函数名)赋予该函数指针变量,如程序中 fun=getMax;
3)用函数指针变量形式调用函数,如程序 int max=fun(a,5);
使用函数指针变量还应注意以下两点:
1)函数指针变量不能进行算术运算,这是与数组指针变量不同的。数组指针变量加减一个整数可 使指针移动指向后面或前面的数组元素,而函数指针的移动是毫无意义的。
2)函数调用中"(*指针变量名)"的两边的括号不可少,其中的*不应该理解为求值运算,在此处它 只是一种表示符号 |
|