- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
typedef详解
进入正文:
代码简化, 促进跨平台开发的目的.
typedef 行为有点像 #define 宏,用其实际类型替代同义字。
不同点:typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。
用法一:
typedefint (int,int)
typedefint (int,int)
ttyyppeeddeeffiinntt(*MYFUN)((iinntt,,iinntt));
这种用法一般用在给函数定义别名的时候
MYFUN
MYFUN
上面的例子定义MMYYFFUUNN 是一个函数指针, 函数类型是带两个int 参数, 返回一个int
在分析这种形式的定义的时候可以用下面的方法:
typedef .
typedef .
先去掉ttyyppeeddeeff 和别名, 剩下的就是原变量的类型..
typedef MYFUN :
typedef MYFUN :
去掉ttyyppeeddeeff和MMYYFFUUNN 以后就剩::
int (*)(int, int)
用法二:
typedef给变量类型定义一个别名.
typedef
typedef
ttyyppeeddeeffstruct{
int a;
int b;
MY_TYPE
MY_TYPE
}MMYY__TTYYPPEE;
这里把一个未命名结构直接取了一个叫MY_TYPE 的别名, 这样如果你想定义结构的实例
的时候就可以这样:
MY_TYPEtmp;
typedef
typedef
第二种用法:ttyyppeeddeeff 原变量类型 别名
简单的函数指针的用法
//形式1:返回类型(*函数名)(参数表)
char(*pFun)(int);
typedefchar(* )(int) //
typedefchar(* )(int) //
//ttyyppeeddeeffcchhaarr((**pFun))((iinntt)) ////跟上一行功能等同
/*typedef PTRFUN
/*typedef PTRFUN
//**ttyyppeeddeeff的功能是定义新的类型。第一句就是定义了一种PPTTRRFFUUNN的类型,并定义这种类
int char */
int char */
型为指向某种函数的指针,这种函数以一个iinntt为参数并返回cchhaarr类型。**//
charglFun(int a){return;}
void main()
{
pFun=glFun;
(*pFun)(2);
}
pFun
pFun
第一行定义了一个指针变量ppFFuunn.它是一个指向某种函数的指针,这种函数参数是一个int
类型,返回值是char类型。只有第一句我们还无法使用这个指针,因为我们还未对它进行
赋值。
glFun().
glFun().
第二行定义了一个函数ggllFFuunn(())..该函数正好是一个以int 为参数返回char的函数。我们要从
指针的层次上理解函数-函数的函数名实际上就是一个指针,函数名指向该函数的代码在内
存中的首地址。
下面是一个例子:
C 代码
1 //#includeiostream.h
2 #includestdio.h
3
typedefint
您可能关注的文档
- PHS系列实验室pH计 中文使用说明书.pdf
- PROYA珀莱雅深邃魅惑眼线水笔评测.pdf
- Profibus教程2.pdf
- PSS仿真介绍.pdf
- PS使用裁剪工具校正拍摄倾斜的照片教程.pdf
- PS如何制作简单星云效果.pdf
- PS鼠绘教程:制作台球桌上的黑8_一个黑色桌球_台球制作实例.pdf
- proe绘图教程.pdf
- ps冰手的制作方法.pdf
- Proteus 仿真软件教程.pdf
- 2024年江西省寻乌县九上数学开学复习检测模拟试题【含答案】.doc
- 2024年江西省省宜春市袁州区数学九上开学学业水平测试模拟试题【含答案】.doc
- 《GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语》.pdf
- 中国国家标准 GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语.pdf
- GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- 《GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构》.pdf
- 中国国家标准 GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 中国国家标准 GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 《GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南》.pdf
文档评论(0)