- 关键要点:
- 函数指针数组的初始化:确保数组中的每个元素都正确指向一个符合要求(返回
int
类型且接受int
类型参数)的函数。可以在声明时初始化,也可以后续逐个赋值。
- 调用时的参数传递:传递给函数指针所指向函数的参数类型和数量必须与函数定义一致,这里是传递一个
int
类型参数。
- 间接访问操作符的正确应用:使用
(*function_pointer)(arguments)
的形式来调用函数指针所指向的函数,其中function_pointer
是数组中的函数指针元素,arguments
是传递的参数。
- 代码示例:
#include <stdio.h>
// 定义几个符合要求的函数
int add_one(int num) {
return num + 1;
}
int multiply_by_two(int num) {
return num * 2;
}
int main() {
// 定义函数指针数组并初始化
int (*func_array[2])(int) = {add_one, multiply_by_two};
// 调用函数指针数组中的函数
for (int i = 0; i < 2; i++) {
int result = (*func_array[i])(5); // 传递参数5
printf("Function %d result: %d\n", i, result);
}
return 0;
}