C/C++中如何使用typedef给函数指针取别名使其更具可读性

原创 2017年08月05日 19:52:55

举个小列子

#include <stdio.h>
void e_g(int a)
{
	printf("a=%d", a);
}

typedef void(*FIRST_FUNCTION)(int);

int main()
{
	FIRST_FUNCTION p;
	p = e_g;
	p(888);
	getchar();
	return 0;
}

由上面的列子可以看出可以用 FIRST_FUNCTION来表示一个指向e_g(int a)的函数指针

下面是运行结果:




可以把函数指针变量和普通变量一样来使用

下面再来举几个例子

#include <stdio.h>
void e_g(int a)
{
	printf("a=%d", a);
}

typedef void(*FIRST_FUNCTION)(int);

void demo(FIRST_FUNCTION f)
{
	f(999);
}
int main()
{
	demo(e_g);
	getchar();
	return 0;
}

运行结果:

是不是看出了可读性变强了呢!



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C/C++函数指针传递和typedef的误区

typedef string *pstrType; const pstrType cstrVar; 请问cstrVar是什么类型?简单的回答是const pstrType,那么这个类型是什么呢? ...
  • comwise
  • comwise
  • 2013年10月12日 23:19
  • 696

C/C++函数指针(typedef简化定义)

学习要点:         1,函数地址的一般定义和typedef简化定义;         2,函数地址的获取;         3,A函数地址作为B函数参数的传递;     函数存放在内存...

C语言结构体及typedef关键字定义结构体别名和函数指针的应用

结构体(struct)的初始化 struct autonlist { char *symbol; struct nlist nl[...

Android JNI编程(六)——C语言函数指针、Unition联合体、枚举、Typedef别名、结构体、结构体指针

一:函数指针1.函数指针顾名思义就是定义一个指针变量指向一个函数,和一级指针并没有很大的区别我们看如下代码就很清楚的知道了#include #include//定义一个函数 int add(int a...
  • a_zhon
  • a_zhon
  • 2016年11月26日 14:57
  • 676

关于C++中函数指针的使用(包含对typedef用法的讨论)

关于C++中函数指针的使用(包含对typedef用法的讨论) (一)简单的函数指针的应用。//形式1:返回类型(*函数名)(参数表)char (*pFun)(int); char glFun(int ...

typedef_函数指针.wps

  • 2011年08月23日 10:05
  • 18KB
  • 下载

typedef函数指针的用法(C++)

typedef函数指针的用法(C++)  代码简化, 促进跨平台开发的目的. typedef 行为有点像 #define 宏,用其实际类型替代同义字。 不同点:typedef 在编译时被解释,因此让...
  • p8x8x8
  • p8x8x8
  • 2011年05月23日 09:56
  • 311

[C++基础]typedef 函数指针的用法

在网上搜索函数指针,看到一个例子。开始没看懂,想放弃,可是转念一想,这个用法迟早要弄懂的,现在多花点时间看懂它,好过以后碰到了要再花一倍时间来弄懂它。其实很多时候都是这样,如果每次到难一点的内容,总想...

关于C++中typedef的用法定义函数指针

为复杂的声明定义一个新的简单的别名。方法是:在原来的声明里逐步用别名替换一部分复杂声明,如此循环,把带变量名的部分留到最后替换,得到的就是原声明的最简化 版。举例:   原声明:void (*b...
  • Nov23
  • Nov23
  • 2012年12月17日 11:08
  • 257
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C/C++中如何使用typedef给函数指针取别名使其更具可读性
举报原因:
原因补充:

(最多只允许输入30个字)