特牛生活网

C语言负数的移位运算_c#负数左移是原码-CSDN博客

网友收藏
文章浏览阅读2.9w次,点赞3次,收藏17次。在c 中左移也就是所说的逻辑移位,右端补0,而右移是算数移位,左端补齐的是最高位的符号位。故负数左移,有可能变成正数,但负数右移,肯定还是负数。用16进制的形式对数据进行赋值,这16进制的数代表的是补码。 i = 0xfffffff7; //0xfffffff7是补码,而不是原码,故i = -9 printf("%d %x\n", i, i); i =_c#负数左移是原码