位运算符
在这里插入代码片
#include<stdio.h>
void main()
{
unsigned char a = -2;//111111
signed char b = -2;//111111
signed char c = 2;//0000010
a = a >> 1;
b = b >> 1;
c = c >> 1;
printf("无符号:%d", a);//127 0 1111111(二进制)
printf("有符号:%d", b);//-1 1 1111111(二进制)
printf("有符号:%d", c);// 1 0 0000001(二进制)
}
#include<stdio.h>
void main()
{
char a, b, c, d;
printf("请输入待验证数字:");//23 00010111
scanf("%d", &a);
b = a >> 2;//5 00000101
c = ~(~0 << 4);
d = b & c;
printf("%d\n", d);
}
//请输入待验证数字:23
//5