2024年3月16日发(作者:)
c语言函数指针的多种赋值方法
在C语言中,函数指针是一种特殊的指针,它存储了一个函数的地址。通过
函数指针,我们可以直接调用函数,而不需要知道函数的实际参数和返回类型。
以下是函数指针的多种赋值方法:
1. 直接赋值
int add(int a, int b) {
return a + b;
}
int main() {
int (*fp)(int, int) = add; // 函数指针赋值
int result = fp(2, 3); // 通过函数指针调用函数
printf("%dn", result); // 输出 5
return 0;
}
在上面的代码中,我们定义了一个函数add,它接受两个整数参数并返回它
们的和。然后,我们定义了一个函数指针fp,它指向add函数的地址。最后,我
们通过fp调用add函数。
2. 使用函数指针作为参数传递
int add(int a, int b) {
return a + b;
}
int main() {
int (*fp)(int, int) = NULL; // 初始化函数指针为NULL
fp = add; // 函数指针赋值
int result = fp(2, 3); // 通过函数指针调用函数
printf("%dn", result); // 输出 5
return 0;
}
在上面的代码中,我们将函数指针作为参数传递给另一个函数。在函数内部,
我们将函数指针赋值为add函数的地址,然后通过该函数指针调用add函数。
3. 使用宏定义赋值
#define ADD(a, b) add(a, b) // 宏定义赋值
int main() {
int result = ADD(2, 3); // 通过宏调用函数
printf("%dn", result); // 输出 5
return 0;
}
在上面的代码中,我们使用宏定义将add函数的调用包装起来,并将其命名
为ADD。这样,我们就可以通过宏调用函数,而不需要知道函数的实际参数和返
回类型。
发布者:admin,转转请注明出处:http://www.yc00.com/news/1710603004a1785101.html
评论列表(0条)