按位取反运算:int a=16,c=~a;,变量c的值为多少

按位取反运算:int a=16,c=~a;,变量c的值为多少,第1张

取反~要把符号位也考虑进去:把 *** 作数各位0变1, 1变0

要考虑符号位的是

左移:把左 *** 作数左移指定位数,右端空位置补0

右移:把做 *** 作数右移指定位数,左端空位置上的值与原来的符号为相同,对无符号数左端移入0;

#include<stdioh>

void main(){

int a = 16, b = 10, c;

c = ~16;

printf("%d\n",c);

c = a<<2;

printf("%d\n",c);

c = a>>2;

printf("%d\n",c);

}

-17

64

4

Press any key to continue

查看第三位是1还是0,只要对该数和下面数求& *** 作即可

00000100 = 0x04

如 BYTE a;

if(a & 0x04)

cout<<"第三位是 1"<<endl;

else

cout<<"第三位是 0"<<endl;

以上就是关于按位取反运算:int a=16,c=~a;,变量c的值为多少全部的内容,包括:按位取反运算:int a=16,c=~a;,变量c的值为多少、C++中如何对BYTE类型的字符串按位 *** 作、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9435128.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存