面试题答案
一键面试#include <iostream>
// 定义一个函数指针类型
typedef int (*FuncPtr)(int, int);
// 已定义的函数
int add(int a, int b) {
return a + b;
}
int main() {
// 定义函数指针变量,并指向add函数
FuncPtr ptr = add;
// 通过函数指针调用add函数
int result = ptr(3, 5);
std::cout << "调用结果: " << result << std::endl;
return 0;
}
解释:
- 首先使用
typedef
定义了一个函数指针类型FuncPtr
,它指向的函数有两个int
类型参数并返回一个int
类型值。 - 然后定义了目标函数
add
。 - 在
main
函数中,定义了一个FuncPtr
类型的指针变量ptr
,并使其指向add
函数。 - 最后通过函数指针
ptr
调用add
函数,并输出结果。