目录
一.背景
在做嵌入式开发中,往往涉及到不同平台,而有些数据类型长度在不同平台时可能会不同。比如int类型、char类型。
为了更好的对代码进行维护,在C99标准中定义了其他数据类型,具体定义stdint.h头文件中
二.数据类型
在嵌入式开发中会经常看见int8_t、int16_t、int32_t、int64_t、uint8_t这些数据类型,这些数据类型并不是新的数据类型,只是其他数据类型的重命名,比如把signed char重命名成int8_t,因为重命名时用到了typedef关键字,所以这些数据类型后面都带有_t。
举例:
int8_t : typedef signed char;
uint8_t : typedef unsigned char;
int16_t : typedef signed short ;
uint16_t : typedef unsigned short ;
int32_t : typedef signed int;
uint32_t : typedef unsigned int;
int64_t : typedef signed long;
uint64_t : typedef unsigned long;
对这些数据类型重命名以后,在嵌入式开发中,如果我们要用到8位的数据类型,使用int8_t或者uint8_t即可,不用去考虑不同平台数据类型长度不一样的问题。兼容性更强。