C语言函数指针简单应用

本案例运用函数指针去调用不同函数,代码简单易懂,让你快速撑握C语言函数指针的使用方法,具体代码如下:

#include <stdio.h>

//对数组每个数加1
void addOne(int *a,int n){
	for(int i=0;i<n;i++)
		++a[i];
}
//对数组每个数加2
void addTwo(int *a,int n){
	for(int i=0;i<n;i++)
		a[i]+=2;
}

int main( void )
{	
	int a[]={1,2,3,4,5,6,7,8,9,10};

	printf("原始a[]:");
	for(int i=0;i<10;i++)
		printf("%d ",a[i]);

	//定义函数指针
	void (*pf)(int*,int);

	//函数指针指向addOne;
	pf=addOne;
	//调用函数addOne();
	(*pf)(a,10);
	printf("\n调用addOne():");
	for(int i=0;i<10;i++)
		printf("%d ",a[i]);

	//函数指针指向addTwo;
	pf=addTwo;
	//调用函数addTwo
	(*pf)(a,10);
	printf("\n调用addTow():");
	for(int i=0;i<10;i++)
		printf("%d ",a[i]);
}

运行结果:

原始a[]:1 2 3 4 5 6 7 8 9 10
调用addOne():2 3 4 5 6 7 8 9 10 11
调用addTow():4 5 6 7 8 9 10 11 12 13



posted @ 2013-10-09 12:03  赵侠客  阅读(296)  评论(0编辑  收藏  举报