typedef 个人理解

20 篇文章 5 订阅

typedef

C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字

https://blog.csdn.net/qq_29350001/article/details/53883571

https://blog.csdn.net/qq_29350001/article/details/53883571

对typedef的真正理解
https://blog.csdn.net/rabbit1125/article/details/626012

真正含义: 像声明这个变量一样 声明另外一个变量

typedef int array[2];
array num ;
num[0]= 11;
num[1] = 22 ;

其真正的含义是 :
int array[2]; ----- 声明一个变量 array ,array 是按照这种形式声明的。

typedef int array[2]; ---- 记录下 声明 array变量的的步骤和方法,来声明其他的变量。
array num; ---- 像声明变量 array 一样,声明 num 变量。

这个操作类似于 ,你自己写了一个word文档,然后设置了标题 段落等等特殊的格式,写完了一个文档。
你感觉这个文档的格式 字体等等 设置的挺好,将现在的文档,保存成为模板。下次写类似的文档,就不用重新设置一遍了。

typedef 后面必须是一个合法的 变量声明语句。

在变量声明语句前面 加上 typedef 关键字的目的是,把这种声明方式 和动作作为一个 模板,用来声明其他的变量。

typedef 和 notepad++ 中的宏操作理念类似:
把刚才的操作过程录制下来, 下一次 重复操作。
在这里插入图片描述

typedef 分析1:

typedef unsigned char BYTE;
BYTE abc;

首先 分开 typedef 和 unsigned char BYTE;

unsigned char BYTE; 是声明一个 变量BYTE ,该变量的类型是 unsigned char 。

BYTE abc;这句话的意思是,像声明BYTE 变量一样,声明abc变量。
声明BYTE变量的形式是:
unsigned char BYTE ;
那么声明abc 变量的形式也为:
unsigned char abc;

typedef 分析2: 声明一个指向数组的指针

typedef unsigned char BYTE[5];
BYTE abc;
abc[4] = 0 ;

首先 分开 typedef 和 unsigned char BYTE[5];

unsigned char BYTE[5]; 是声明一个 变量BYTE ,该变量的类型是 unsigned char [5]。

BYTE abc;这句话的意思是,像声明BYTE 变量一样,声明abc变量。

声明BYTE变量的形式是:
unsigned char BYTE[5] ;
那么声明abc 变量的形式也为:
unsigned char abc[5];

typedef :声明一个指向 函数的函数指针

typedef int (*func)(void) ;
func sum ;

首先 分开 typedef 和 int (*func)(void) ;

int (*func)(void) ; 是声明func变量是一个指向这种函数的组织形式的函数指针。

func sum ; //sum 也是一个指向这种组织形式的指针

sum的形式为: int(*sum)(void);

(有空补充)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值