函数指针
来源:互联网 发布:进销存记账软件 编辑:程序博客网 时间:2024/06/07 20:59
#include <stdio.h>
int add(int a, int b)
{
return a+b;
}
int sub(int a, int b)
{
return a-b;
}
int mul(int a, int b)
{
return a*b;
}
int mdiv(int a, int b)
{
return a/b;
{
switch(opt)
{
case '+':
return add;
case '-':
return sub;
case '*':
return mul;
case '/':
return mdiv;
default:
return NULL;
}
return NULL;
}
int calculate(char opt, int a, int b)
{
pFunc fp = callback(opt);
return fp(a,b);
}
int main()
{
int a,b;
printf("please input two nuber:\n");
scanf("%d%d",&a,&b);
printf("%d %c %d = %d\n", a,'+', b, calculate('+', a, b));
printf("%d %c %d = %d\n", a,'-', b, calculate('-', a, b));
printf("%d %c %d = %d\n", a,'*', b, calculate('*', a, b));
printf("%d %c %d = %d\n", a,'/', b, calculate('/', a, b));
return 0;
}
#include <stdlib.h>
typedef int (*pFunc)(int,int);//typedef给函数指针取别名为pFunc,函数指针为pFunc,pFunc指向一个函数,这个函数的返回值为int型,两个参数都为int型
int add(int a, int b)
{
return a+b;
}
int sub(int a, int b)
{
return a-b;
}
int mul(int a, int b)
{
return a*b;
}
int mdiv(int a, int b)
{
return a/b;
}
{
switch(opt)
{
case '+':
return add;
case '-':
return sub;
case '*':
return mul;
case '/':
return mdiv;
default:
return NULL;
}
return NULL;
}
int calculate(char opt, int a, int b)
{
pFunc fp = callback(opt);
return fp(a,b);
}
int main()
{
int a,b;
printf("please input two nuber:\n");
scanf("%d%d",&a,&b);
printf("%d %c %d = %d\n", a,'+', b, calculate('+', a, b));
printf("%d %c %d = %d\n", a,'-', b, calculate('-', a, b));
printf("%d %c %d = %d\n", a,'*', b, calculate('*', a, b));
printf("%d %c %d = %d\n", a,'/', b, calculate('/', a, b));
return 0;
}
阅读全文
0 0
- 指针函数 函数指针
- 函数指针/指针函数
- 指针函数&函数指针
- 函数指针 指针函数
- 函数指针 指针函数
- 指针函数,函数指针
- 函数指针,指针函数,
- 指针函数,函数指针
- 函数指针 指针函数
- 函数指针、指针函数
- 指针函数&函数指针
- 函数指针 指针函数
- 函数指针 指针函数
- 函数指针&指针函数
- 指针函数 函数指针
- 指针函数 &函数指针
- 函数指针&指针函数
- void指针 函数指针
- LauncherActivity开发启动的Activity列表
- 傅里叶变换的现实意义----命运论
- MyBatis框架的基本使用
- 15个常用的javascript正则表达式
- Android 3D 笔记(入门二)-小知识点回味
- 函数指针
- 两款用于检测内存泄漏的软件
- don4j演示---增删改查以及无中生有方法的使用
- STT自问自答
- SVN错误:locked; try performing 'cleanup'
- 学习js扩展运算符
- 怎样使footer始终处于页面的底部
- Python学习笔记(七)—— List.sort 与二进制搜索bisect
- 材料、低值品、易耗品验收单