注册 登录
编程论坛 Android开发

赋值不懂啊啊啊啊

日恋 发布于 2012-07-30 22:37, 545 次点击
字符型数据赋给整型变量这里如果字符被系统认为带符号,最高位全是1的话值不变吗?char c='\376' int i
    i=c

             11111110
            ↓
1111111111111110
第一行是c的数据,第二行题i的数据,把最高位全补1,难道这不影响i的值吗?为何最后i的值是-2。在第一行数据送到第二的过程中,补码又是怎么补的,为什么要补,不是照原样认到低字节中吗?说详细点
2 回复
#2
日恋2012-08-01 21:23
晕死了,发错版块了,本来是发C的,Android开发了
#3
fengjuan22012-08-02 10:44
你用unsigned int就补位0了
1