菜鸟笔记
提升您的技术认知

c/c 固定位宽类型-ag真人游戏

int一定是32bit吗?不一定

实际上,c/c 标准规定int的位宽不少于16bit

作为一门古老的语言,c语言历经了各种各样的操作系统,小型的、大型的、内存小的、资源极其有限的,等等。对于同一个数据类型,在不同的操作系统上,其长度是不一定的,见下表。

c/c 标准

lp32系统

(例如32bit win16api)

ilp32系统

(例如32bit unix/linux/mac/win32api)

llp64系统

(例如win64api)

lp64

(例如64bit unix/linux/mac)

short、unsigned short 至少16bit 16 16 16
int、unsigned int 至少16bit 16 32 32
long、unsigned long 至少32bit 32 32 64
long long、unsigned long long 至少64bit 64 64 64

所以,为了程序的可移植性,建议使用中的固定位宽类型:
int8_t/uint8_t/int16_t/uint16_t/int32_t/uint32_t/int64_t/uint64_t

网站地图