Java中八种基本数据类型占用字节空间:
基本数据类型 所占用空间大小
byte b; 1字节
short s; 2字节
int i; 4字节
long l; 8字节 ( c++ 中 int和long都是占4个字节(即32位)。)
char c; 2字节(C语言中是1字节)
float f; 4字节
double d; 8字节
boolean bool; false/true
基本数据类型注意事项:
1、未带有字符后缀标识的整数默认为int类型;
未带有字符后缀标识的浮点数默认为double类型。
2、如果一个整数的值超出了int类型能够表示的范围,则必须增加后缀“L”(不区分大小写,建议用大写,因为小写的L与阿拉伯数字1很容易混淆),表示为long型。
3、带有“F”(不区分大小写)后缀的整数和浮点数都是float类型的;带有“D”(不区分大小写)后缀的整数和浮点数都是double类型的。
4、编译器会在编译期对byte、short、int、long、float、double、char型变量的值进行检查,如果超出了它们的取值范围就会报错。
5、int型值可以赋给所有数值类型的变量;
long型值可以赋给long、float、double类型的变量;
float型值可以赋给float、double类型的变量;
double型值只能赋给double类型变量。
c++
字节对齐的问题。 一般默认是按4字节对齐。(20 是4的整数倍,刚好。52是因为 char c[10]; 是10,会被补充成12 用来4字节对齐。)
对于指针类型,都占4个字节,因为指针指向的是一个地址,32位操作系统就是4字节。当然如果是64位操作系统那就是8字节了。