#include <iostream>
#include<stdlib.h>
int main()
{
short a = 2017;
a=a << 5;
a=a >> 5;
std::cout << a;
return 0;
}
输出为-31,当a为-2017时,为31。
执行左移操作时,符号位会一同左移,右侧补零。
执行右移操作时,左侧会补与符号位相同的数字,可能为0,可能为1。
#include <iostream>
#include<stdlib.h>
int main()
{
short a = 2017;
a=a << 5;
a=a >> 5;
std::cout << a;
return 0;
}
输出为-31,当a为-2017时,为31。
执行左移操作时,符号位会一同左移,右侧补零。
执行右移操作时,左侧会补与符号位相同的数字,可能为0,可能为1。