C语言函数指针如何使用
C语言中的函数指针可以用来存储函数的地址,并且可以像普通函数一样调用函数。
以下是函数指针的基本使用方法:
1. 声明函数指针变量:
```c
returnType (*pointerName)(parameterType);
```
例如:
```c
int (*add)(int, int); // 声明一个指向返回值为int,参数为两个int的函数的指针变量add
```
2. 将函数的地址赋给函数指针变量:
```c
pointerName = &functionName;
```
例如:
```c
add = ∑ // 将函数sum的地址赋给函数指针变量add
```
3. 通过函数指针调用函数:
```c
returnType result = pointerName(arguments);
```
例如:
```c
int result = add(1, 2); // 调用函数指针变量add所指向的函数,并传递参数1和2
```
完全示例代码以下:
```c
#include
int sum(int a, int b) {
return a + b;
}
int main() {
int (*add)(int, int); // 声明一个指向返回值为int,参数为两个int的函数的指针变量add
add = ∑ // 将函数sum的地址赋给函数指针变量add
int result = add(1, 2); // 调用函数指针变量add所指向的函数,并传递参数1和2
printf("Result: %d
", result); // 输出结果:Result: 3
return 0;
}
```
注意:函数指针的类型一定要与所指向的函数的类型保持一致,即返回值类型和参数类型一定要一致。在声明函数指针变量时,需要注意使用小括号将`*pointerName`括起来,以辨别指针变量和普通函数的声明。
TOP