函数指针作为函数参数--举例

#include<stdio.h>

void fun(int m)
{
	printf("in fun()\n");
	printf("m=%d\n", m);
}

void call(void (*a)(int), int b)
{
	(*a)(b);
	printf("in call()\n");
	printf("b=%d\n", b);
}

int main()
{
	call(fun, 10);
	return 0;
}

在这里,call()函数的第一个参数为一个函数指针类型,所以在调用时直接使用fun作为参数就可以了.当然,根据function-to-pointer原则,也可以写成call(*fun, 10);效果是一样的.

posted @ 2011-09-05 20:10  猛回头  阅读(655)  评论(0编辑  收藏  举报