文章目录[x]
- 0.1:1-12课时
1-12课时
梦想开始的地方
#include <stdio.h> int main() { printf("%s\n","hello,world"); return 0; }
常见位运算
此处有题目留空
#include <stdio.h> int main() { printf("c = %d\n",5 | 2); printf("c = %d\n",7 ^ 8); printf("c = %d\n",(15 >> 2) & 13); printf("c = %d\n",173 ^ 60); return 0; }运行结果如下:
c = 7 c = 15 c = 1 c = 145
#include <stdio.h> int main() { char c = 'A'; short a = c; int b = c; printf("c = %c\n",c); printf("c = %d\n",c); printf("a = %d\n",a); printf("b = %d\n",b); c = 0x40; printf("c = %x\n",c); printf("c = %d\n",c); c = c << 1; printf("c = %d\n",c); c = c << 2; printf("c = %d\n",c); return 0; }运行结果如下:
c = A c = 65 a = 65 b = 65 c = 40 c = 64 c = -128 c = 0
移位小结
整数符号位为0右移运算符时高位补0低位移除
负数符号位为1时,右移运算时高位补1低位移除
左移运算时高位移除低位补0
最高位的具体位置,有数据类型决定
最后三位输出64 << 1 =-128 -128<< 1 = 0
get到了吗?欢迎评论留言!

长年累月的成神之路