C语言数据类型图
注:在51单片机中int是16位,而在stm32中int占32位
前面的Stdint关键字是新版本使用的用Typedef更带名字厚度关键字,后面的ST关键字是老版本,但新版本兼容老版本关键字
_t便是使用Typedef的缩写
#define和typedef的区别
宏定义:新名字在前,被替代名在后,无需分号
Typedef:新名字在后,被代替名在前,同时只能对变量类型换名字,并且需要加分号;
~~被改名后原名依旧能用;
结构体
Struct是关键字,加上后面{…}里的内容才叫变量(数据)类型
结构体也是一种组合数据类型,作用是组合不同的数据类型
同样结构体可以和Typedef结合,例如:
这样就能多次使用结构体,不同多次定义,减少工程量
枚举类型:
枚举类型与typedef的结合:
枚举类型的变量赋值只能按照枚举定义中的来,否则就会编译器会显示出现其他变量
所以结构体与枚举类型区别是:结构体的变量可以赋任何值,只要是其变量类型,而枚举类型变量只能赋它枚举中的值。