指针类型函数,有什么用途3
发布网友
发布时间:2023-11-11 15:54
我来回答
共2个回答
热心网友
时间:2024-11-23 10:34
函数指针,一般用途作为“回调函数”使用。
比如写了一个方法(函数),你希望调用它执行完处理之后,自动调用另一个后续的函数来处理继续的业务。这个时候就可以把 “一个函数的入口地址”当是一个指针。 你的处理方法中接受函数参数时把这个指针传进来。
就你以的例子为例
int *myPlus(int a, int b)
{
printf("plus:%d + % d = %d\n" ,a ,b, a + b );
return 0;
}
int *myMinus(int a, int b)
{
printf("minus: %d - % d = %d\n", a, b, a - b);
return 0;
}
int funt2( int a, int b , void *funtz )
{
/**
*/
int(*pf)(int, int) = ( int (*)(int,int ) )funtz;
pf(a, b);
return 0;
}
int main()
{
funt2( 10,20, myPlus ); //myPlus 是一个函数指针,它现在是作为一个参数在传递
funt2( 10,20, myMinus );
return 0;
}
热心网友
时间:2024-11-23 10:34
对IO设备,例如内存地址,FAT等进行直接读写访问,而不用通过顶层的接口声明引用。在一定程度上绕开系统环境的包围和*。如此说你就不用考虑它的用途了吧