STM32——MDK4与MDK5中对于数据类型的不同

2023-04-07  

首先我们来看MD4中的对于数据类型的定义:

然后我们跳转到其定义处查看对其的定义:

typedef unsigned long  u32;

 

typedef unsigned short u16;

 

typedef unsigned char  u8;

 

/*首先我们来认识typedef,这是用来为复杂的声明定义简单的别名,也就是说,我们可以用它来给我们的数据类型来进行定义。*/

 

/* 然后我们再来看之后的unsigned,unsigned用于限定后面的为无符号类型,如果后面不加什么的话,就默认为unsigned int。*/

 

/*unsigned long 无符号长数据  unsigned char 无符号字符型 unsigned short无符号短数据*/ 

 

/*u8,u16,u32都是C语言数据类型,分别代表8位,16位,32位长度的数据类型,一个字节是8位。*/

 

/*所以u8是1个字节,u16是2个字节,u32是4个字节。*/

在MDK5中,我们可以看到其对于数据类型的定义是大致与MDK4相同的。


typedef unsigned          char uint8_t;

 

typedef unsigned short     int uint16_t;

 

typedef unsigned           int uint32_t;

 

typedef unsigned       __INT64 uint64_t;

通过与上面对比,我们就可以知道,在MDK5中,对于MDK中的一些数据类型的定义有了些许改动,如在MDK4中用u8,在MDK5中用uint8_t,这样是为了让程序更加统一规范化,其后面的"t"应该是为了辨识其是使用typedef所定义的数据类型,让其余开发人员所认识,不至于搞混。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。