温馨提示×

C语言函数指针怎么使用

小亿
117
2023-08-01 17:04:24
栏目: 编程语言

C语言中的函数指针可以用来存储函数的地址,并且可以像普通函数一样调用函数。

以下是函数指针的基本使用方法:

  1. 声明函数指针变量:
returnType (*pointerName)(parameterType);

例如:

int (*add)(int, int);  // 声明一个指向返回值为int,参数为两个int的函数的指针变量add
  1. 将函数的地址赋给函数指针变量:
pointerName = &functionName;

例如:

add = ∑  // 将函数sum的地址赋给函数指针变量add
  1. 通过函数指针调用函数:
returnType result = pointerName(arguments);

例如:

int result = add(1, 2);  // 调用函数指针变量add所指向的函数,并传递参数1和2

完整示例代码如下:

#include <stdio.h>
int sum(int a, int b) {
return a + b;
}
int main() {
int (*add)(int, int);  // 声明一个指向返回值为int,参数为两个int的函数的指针变量add
add = &sum;  // 将函数sum的地址赋给函数指针变量add
int result = add(1, 2);  // 调用函数指针变量add所指向的函数,并传递参数1和2
printf("Result: %d\n", result);  // 输出结果:Result: 3
return 0;
}

注意:函数指针的类型必须与所指向的函数的类型保持一致,即返回值类型和参数类型必须一致。在声明函数指针变量时,需要注意使用小括号将*pointerName括起来,以区分指针变量和普通函数的声明。

0