赞
踩
数据类型转换的时候,经常会进行符号位的扩展和截断:
假设将一个整数从单字节的数据类型(char)转换成双字节的数据类型(short):
如果该数是正数,即符号位是0,比如0x05, 多出来的8位全部填符号位0, 转换后, 变成 0x0005, 十进制数值仍为5,没有改变;
如果该数是负数,即符号位是1,比如 0x81, 多出来的8位全部填符号位1,转换后,变成0xff81, 根据下面2的补码的计算,转变前后十进制数值都是-127.
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。