指向函数的指针数组的用法

来源:互联网 发布:学java先学c? 编辑:程序博客网 时间:2024/05/21 09:22
声明一个指向函数的指针数组,并通过指针调用函数。
#include<stdio.h>void f1();//函数f1的声明void f2();//函数f2的声明void f3();//函数f3的声明void main(){void (*f[3])()={f1,f2,f3};//指向函数的指针数组的声明int flag;printf("请输入一个1,2或者3.输入0退出.\n");scanf("%d",&flag);while(flag){   if(flag==1||flag==2||flag==3)   {   f[flag-1]();//通过函数指针调用数组中的函数   printf("请输入一个1,2或者3.输入0退出.\n");       scanf("%d",&flag);   }        else   {   printf("请输入一个合法的数(1-3),0退出。\n");   scanf("%d",&flag);   }}printf("程序退出。\n");}void f1()//函数f1的定义{printf("函数f1被调用!\n");}void f2()//函数f2的定义{printf("函数f2被调用!\n");}void f3()//函数f3的定义{printf("函数f3被调用!\n");}

程序运行结果:


注意:函数指针不能执行像fun+1、fun++、fun--等运算。

0 0
原创粉丝点击