c语言函数指针作为函数参数
时间: 2024-12-14 18:13:02 浏览: 15
C语言函数指针
在C语言中,函数指针是一种特殊的变量,它存储的是一个函数的地址。当你将函数指针作为参数传递给其他函数时,这种机制允许我们动态地将函数作为“数据”处理。这在很多场景下非常有用,比如回调、事件驱动编程或者需要根据条件选择执行不同操作的地方。
例如:
```c
void print(int (*func)(int)) { // 定义一个接受函数指针作为参数的函数
func(5); // 调用通过指针传递的函数,并传入5作为参数
}
void printHello() {
printf("Hello");
}
void printWorld() {
printf("World");
}
int main() {
print(printHello); // 将printHello函数的地址传递给print函数
print(printWorld); // 同样,将printWorld的地址传递
return 0;
}
```
在这个例子中,`printHello` 和 `printWorld` 都是函数,它们的地址分别赋值给了 `print` 函数的参数 `func`。当 `print` 函数被调用时,会根据传入的不同函数指针来执行相应的函数。
阅读全文