可知0x01左移以位 输出结果为 0x02 十进制为2
十进制为1 将0x01左移2位 输出结果为 0x04 十进制为4
十进制为1 将0x01左移3位 输出结果为 0x08 十进制为8
十进制为3 将0x11 左移2位 输出结果为 0x0c 十进制为12
十进制为32 将0x20 左移2位 输出结果为 0x80 十进制为128
由以识可知:将某个数左移N位,它就乘上它的2的N次方倍
int main(int argc, char const *argv[])
{
int a1=2;
int a2=a1<<4; /*将a1左移4位 达到乘以16的目的 每左移一位相当于乘上2,
2的的4次方等于16,则移动4位*/
printf("a1=%d\ta2=%d\t\n",a1,a2);
return 0;
}
运行状态: