1.Java数据类型
数据类型 | 关键字 | 内存占用 | 范围 |
---|---|---|---|
字节型 | byte | 1字节 | -128 ~ 127 |
短整型 | short | 2字节 | -32768 ~ 32767 |
整型 | int | 4 字节 | -2^31 ~ 2^31-1 |
长整型 | long | 8 字节 | -2^63 ~ 2^63-1 |
单精度浮点数 | float | 4 字节 | 有范围,一般不关注 |
双精度浮点数 | double | 8 字节 | 有范围,一般不关注 |
字符型 | char | 2 字节 | 0 ~ 65535 |
布尔型 | boolean | 没有明确规定 | true 和 false |
2.C语言数据类型
数据类型 | 关键字 | 内存占用 | 范围 |
---|---|---|---|
短整型 | short | 2 字节 | -2^15 ~ 2^15-1 |
无符号短整型 | unsigned short | 2字节 | 0 ~ 2^16-1 |
整型 | int | 4 字节 | -2^31 ~ 2^31-1 |
无符号整形 | unsigned int | 4字节 | 0 ~ 2^32-1 |
长整型 | long | 4 字节(32位) | -2^31 ~ 2^31-1 |
长整型 | long | 8 字节(64位) | -2^63 ~ 2^63-1 |
无符号长整形 | unsigned long | 4字节 | 0 ~ 2^32-1 |
单精度浮点数 | float | 4 字节 | 3.4E-38 ~ 3.4E+38 |
双精度浮点数 | double | 8 字节 | 1.7E-308 ~ 1.7E+308 |
字符型 | char | 1 字节 | -2^7 ~ 2^7-1或0 ~ 2^8-1 |
3.不同点
1.Java的整形和浮点都是带有符号的;C语言有无符号类型
2.Java中的char占2字节;C语言中char占1字节
3.Java中不论16、32、64系统,int都是4字节,long是8字节;C语言中int有2字节(16位)、4字节(32位、64位),long有4字节(16位、32位)、8字节(64位)
4.Java中Boolean类型只能赋true或false;C语言中为0或非0
4.最后
无论是Java还是C语言,整形默认为int,浮点型默认为double