我想,uint8、uint16、uint32、uint64 这大家可能比较理解unit,unsigned int 嘛
uint8,我想很多人也能够理解,其实是unsigned char
那么 _t 呢?其实就是 typedef 的意思
我们在学习标准的C语言时,常见的有 bit、char、short、int、long、float、double等
却几乎不曾见到uint8、uint16 等
所以,人家在这些自定义数据类型后面加 _t 来表示这些数据类型是 typedef 的
以上数据类型在C99中定义如下,其他地方的引用也大同小异了。
这些数据类型是 C99 中定义的,具体定义在:/usr/include/stdint.h
-
- #ifndef
__int8_t_defined - #
define __int8_t_defined - typedef
signed char int8_t; - typedef
short int int16_t; - typedef
int int32_t; - #
if __WORDSIZE == 64 - typedef
long int int64_t; - #
else - __extension__
- typedef
long long int int64_t; - #
endif - #endif
-
-
- typedef
unsigned char uint8_t; - typedef
unsigned short int uint16_t; - #ifndef
__uint32_t_defined - typedef
unsigned int uint32_t; - #
define __uint32_t_defined - #endif
- #if
__WORDSIZE == 64 - typedef
unsigned long int uint64_t; - #else
- __extension__
- typedef
unsigned long long int uint64_t; - #endif