函数指针实现不同数目形参的函数调用
来源:互联网 发布:在淘宝上卖什么最简单 编辑:程序博客网 时间:2024/06/14 21:02
#include <stdio.h>
typedef int (* func_t)(void *,void *,void *, void *);
int add(void * a,void *b){ return (*(int *)a+ *(int *)b);}
int singel(void * a){ return *(int *)a;}
int Square(void * a,void *b){ return (*(int *)a * *(int *)b);}
int Cubic(void * a,void *b, void *c){ return (*(int *)a * *(int *)b * *(int *)c);}
int x4(void * a,void *b, void *c,void *d){ return (*(int *)a * *(int *)b * *(int *)c * *(int *)d);}
void print_result(func_t func){
int a = 1, b=2, c=3, d=4;
printf("%d %d %d \n%d\n",a,b,c,func(&a,&b,&c,&d));
}
int main()
{
print_result((func_t)add);
print_result((func_t)singel);
print_result((func_t)Square);
print_result((func_t)Cubic);
print_result((func_t)x4);
}
typedef int (* func_t)(void *,void *,void *, void *);
int add(void * a,void *b){ return (*(int *)a+ *(int *)b);}
int singel(void * a){ return *(int *)a;}
int Square(void * a,void *b){ return (*(int *)a * *(int *)b);}
int Cubic(void * a,void *b, void *c){ return (*(int *)a * *(int *)b * *(int *)c);}
int x4(void * a,void *b, void *c,void *d){ return (*(int *)a * *(int *)b * *(int *)c * *(int *)d);}
void print_result(func_t func){
int a = 1, b=2, c=3, d=4;
printf("%d %d %d \n%d\n",a,b,c,func(&a,&b,&c,&d));
}
int main()
{
print_result((func_t)add);
print_result((func_t)singel);
print_result((func_t)Square);
print_result((func_t)Cubic);
print_result((func_t)x4);
}
- 函数指针实现不同数目形参的函数调用
- 函数指针实现不同数目形参的函数调用
- 用指针调用函数的不同形式
- [简记]通过函数指针调用函数的不同方法
- 参数数目不确定的函数调用
- 函数指针 的调用
- 函数指针的调用
- 怎样实现数目不定的函数参数
- 怎样实现数目不定的函数参数
- VC++ 的类中使用函数指针的小例子,通过函数指针调用不同的函数
- 利用函数指针实现动态库的动态调用——函数指针正向调用法
- 成员函数指针作为形参调用
- 27.指针函数的调用
- C++函数传参、函数指针的定义以及调用
- 函数指针调用类的成员函数
- 函数调用的本质与函数指针
- 函数指针调用类的成员函数
- 以指向函数的指针作为函数形参实现多个函数的替换
- string tips
- 注解
- redmine安装过程中常见问题
- linux 启动tomcat
- Stream 技术小结 天堂向左 DBA向右
- 函数指针实现不同数目形参的函数调用
- 操作系统在hello world里面做了什么
- DependencyProperty:审定,胁迫及变化处理(第二部分:Silverlight的)
- vim打开文件时的乱码问题
- VLC数据访问模块
- Android中Cursor的用法
- jquery三目运算符
- Oracle dual解析
- 获得通讯录中联系人的所有属性