C语言函数指针怎么使用

327
2023/8/21 17:04:24
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

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括起来,以区分指针变量和普通函数的声明。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c语言怎么实现冒泡排序算法