单片机/MCU论坛
直播中

李英

7年用户 1366经验值
私信 关注
[问答]

求助,关于C语言中的typedef和define问题

程序中typedef unsigned char  UINT8和#define UINT8 unsigned char有什么特殊区别吗?不可以用一个来代替吗?为什么一个程序中要用两个?自己一直都是只用一个,没有涉及到用两个的情况,求指点?                  

回帖(1)

刘晓英

2023-10-26 17:46:20
typedef是专门用于类型定义的,而#define仅是把某处的文本替换了再编译,两者是有区别的例如typedef  int T


T p; 定义了p这个整形数据,
而 T* p的话并不能定义为指向整型的指针。
如果是[size=2em]#define  int T[size=2em]的话就可以
举报

更多回帖

发帖
×
20
完善资料,
赚取积分