- C和C++中:
short两个字节长度,其中符号位占了一位。所以实际数值位数是15位。取值范围为:-32768~+32768。
unsigned short没有符号位,所以实质数值位数是16位。取值范围:0~65536。 - Java中的基本类型都是有符号类型,也就是数值类型都有正负号。所占位数,不随硬件变化。其基本数据类型大小如下:
char 2个字节,16位;
byte 1个字节, 8位;
short 2个字节,16位;
int 4个字节,32位;
long 8个字节,64位;
float 4个字节,32位;
double 8个字节,64位;
以上基本类型都有一位符号位。 - 互转操作:
Java读取有符号类型:
int readUnsignedShort () //从流中读取一个0~65535(0xFFFF)的双字节数据,并以int数据类型的数据返回。返回的数据相当于C/C++语言中所谓的“WORD”, 并且是以“低地址低字节”的方式返回的,所以程序员不需要额外的转换。
Java有符号类型转无符号类型:
public int getUnsignedShort(short data){ //将data字节型数据转换为0~65535 (0xFFFF 即 WORD)。
return data&0x0FFFF ;
}
< 基本功>short与Unsigned short以及Java基本类型
最新推荐文章于 2024-07-01 17:52:22 发布