作用:
代码简化, 促进跨平台开发的目的。
与#define区别:
typedef 行为有点像 #define 宏,用其实际类型替代同义字。
typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。
示例:
typedef int (*Myfunc)(char, char); //定义一个函数指针类型
//这种用法一般用在给函数定义别名的时候
//上面的例子定义Myfunc 是一个函数指针, 函数类型是带两个char 参数, 返回类型为int
//在分析这种形式的定义的时候可以用下面的方法:
//先去掉typedef 和别名, 剩下的就是原变量的类型
//去掉typedef和Myfunc以后就剩:
int (*)(char, char)
int test(char a,char b){return 1;}
int main(){
Myfunc tmp=test;
char a='a';
char b='b';
tmp(a,b);
return 0;
}
本文探讨了C/C++中typedef与#define的区别,通过实例详细解释了typedef如何用于简化代码和促进跨平台开发,特别是在定义函数指针类型的场景下。
1866

被折叠的 条评论
为什么被折叠?



