程序运行的结果
书上的结果
255 1 254
255 2 252
255 3 248
255 4 240
255 5 224
255 6 192
255 7 128
照书上的打的 就是int 要不就是书上写错了 那为什么下面的 能正确
追答下面的是右移,右移不管几个字节结果都是对的,左移如果是如果位数不足会舍弃,你把y改成unsigned char类型就跟书上的结果一样了。
255=(11111111)
左移一位是(111111110)=510
但如果这个整数只有一个字节,结果就少一个1变成(11111110)=254.