各种数据类型在16位、32位和64位系统下所占字节差异简介

编写C、C++程序时需要考虑每种数据类型在内存中所占的内存大小,即使同一种数据类型在不同平台下所占内存大小亦不相同,具体对比如下:

数据类型 16位系统(byte) 32位系统(byte) 64位系统(byte) 备注
char 1 1 1  
short 、unsigned short 2 2 2  
int、unsigned int 2 4 4  
long、unsigned long 4 4 8  
float 4 4 4  
double 8 8 8  
long long 8 8 8  
long double   10/12 10/16 有效位10字节。32位为了对齐实际分配12字节;64位分配16字节
指针 2 4 8  

 

你可能感兴趣的:(C/C++开发语言)