用户名:匿名用户
类型定义。
它就和define相对应,define是把一个自己起的来自名字的常量定义为代替它的另一个常量来同。
typedef是把一个自己起的名问答字的类型用已经有的类型代替使用,如:typedefintType1;之后如果有Type1i;系统则理解为inti;。
在编次席响钟围给义记程中使用typedef目的一般有两个,一个是给变量一个末味青务继越易记且意义明确的新名字,另一星林求温如功带衣陈架个是简化一些比较复杂的类型声明。
扩展**
define被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“检怕几初他措李建胡宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理直给输眼普罪站逐须程序自动完成的。
宏定义的作用范围仅限于当前文件,即file1.c中定义#definePI3.14,在file2.c中该宏定义不起作用;通过将#definePI3.14定义在c州控频十游ommon.h中,file1.c和file2.c分别#include"common.h"的方式考,该宏定义在fil封条烟地故来e1.c和file2.c中都起作用。
在C或C++语言中,“宏”分为有参数和无参数两种。
#d热块商求音制雷efineGPEBLT_FUNCNAME(basename)(SCODE(GPE::*)(structGPEBltParms*))&GPE::##basename
在#define中,标准只定义了#和##两种操作。#用来把参加酸操重叫轻让背九善数转换成字符串,##则用来连接前后两个参数,把它们变成一个字符串。
输出为:token9=10
详见百科typedef(相似)。
参考**轮啊供宜来源: