C/C++ typedef 用法,引言:tyedef声明,简称tyedef,功能:为现有类型创建一个新的名字。比如:程序编写者常常使用tyedef来编写更美观和可读的代码。所谓美观:tyedef能隐藏笨拙的语法构造、平台相关的数据类型,从而增强可移植性和程序的可维护性。
UINT32 sum; // 定义一个变量:int sum; typedef int arr[3]; // arr 类型是 int[3];(存放int型数据的数组) arr a; // 定义一个数组:int a[3]; 同理: typedef void (*pfun)(void); // pfun 类型是 void(*)(void) pfun main; // 定义一个函数:void (*main)(void); 在博客上看到一个...
第一种方法:int (*a[10])(int); 第二种方法:typedef int (*pfunc)(int); pfunc a[10]; 2)、定义一个有10个指针的数组,该指针指向一个函数,该函数有一个函数指针(不带参数,返回值为空)参数,并返回空。 第一种方法:void (*a[10])(void (*)(void)); 第二种方法:typedef void (*pfuncParam)...
typedef void (*pFUNC)(int); // 给"无返回值,有一个int参数的函数指针"类型生成一个新名称,叫pFUNC; pFUNC pf1, pf2, pf3, pf4; // 比 void (*pf1)(int)..这种轻松多了吧? 1. 2. 或者 typedef void FUNC(int); // 给"无返回值,有一个int参数的函数"类型生成一个新名称,叫FUNC; FUNC ...
struct student{ char * name; int age; int score; char *address; stuct student *next; }; typedef student stu; typedef student * pstu; 3.2,typedef和复杂类型 我们使用linux编程的时候,会遇到一个非常重要的函数signal,也就是系统发生中断的时候会调用的函数。 这个函数的标准声明如下: void (*signa...
typedef int arr[3]; // arr 类型是 int[3];(存放int型数据的数组) arr a; // 定义一个数组:int a[3]; 同理: typedef void (*pfun)(void); // pfun 类型是 void(*)(void) pfun main; // 定义一个函数:void (*main)(void);
int *p_array [5]; //整型指针的数组的变量 int (*array_pointer) [5];//整型数组的指针的变量 int function (int param);//函数定义,也可将函数名看作函数的变量 int *function (int param);//仍然是函数,但返回值是整型指针 int (*function) (int param);//现在就是指向函数的指针了 ...
void *PFUNC(void);这你应该能够理解吧?这是一个函数,名字为PFUNC,此函数没有任何参数,返回值是一个指向void的指针。明白?接下来,加上括号,成了void(*PFUNC)(void);这里(*PFUNC)优先级最高,它表示,PFUNC是一个指针。而且这个指针指向一个函数。但它不能随随便便指向任意函数,必须是指向...
void(*pFunc)(int);//定义一个函数指针pFunc=&printInt;//指向函数(*pFunc)(100);//调用 其中void (*pFunc)(int)是声明一个函数指针,指向返回值是void,调用参数是(int)的函数,变量名是pFunc,pFunc就是函数指针了,这是函数指针的简单用法。