由于C语言没有规定short,int,long类型的长度,因此在不同的平台中,short,int,long的长度可能不同。
这样,我们在一个平台(例如64位Windows)上开发的软件,移植到另一个平台(例如32位STM32)时,生成的软件可能不能正常运行。
怎么办呢?
要是我们使用的short、int、long类型在不同的平台中,定义的长度一样就好了。
基于这个理念,C99提供了一套新定义的整型,使用方法如下:
1、程序包含stdint.h头文件
#include
2、使用stdint.h定义的如下的整型类型,来定义变量
int8_t——1字节有符号整型uint8_t——1字节无符号整型int16_t——2字节有符号整型uint16_t——2字节无符号整型int32_t——4字节有符号整型uint32_t——4字节无符号整型int64_t——8字节有符号整型uint64_t——8字节无符号整型
3、举例
下面是使用stdint.h中定义的整数类型的程序:
#include #include int main(){ int16_t iStudentNum = 128; uint32_t uiMoney = 9876; printf("iStudentNum is %d.", iStudentNum); printf("uiMoney is %u.", uiMoney); return 0;}
程序编译后运行结果为:
iStudentNum is 128.uiMoney is 9876.