c++中~与!有什么区别

来源:百度知道 编辑:UC知道 时间:2024/06/02 01:49:08
~叫按位求反,!叫逻辑求反,这两者有什么区别吗?谢谢啦~

“~”是一个单目运算符,用来对一个二进制数按位取反,即将0变1,1变0;
“!”表示逻辑非,即真的非是假,假的非是真,或零的非是非零数,非零数的非是零。

你会用就行啊,

~是对二进制数而言的,把二进制的1变0,0变1
!是对十进制而言的,真为1,假为0

~叫按位求反 比如0101 使用后1010 单目运算 ~A 这样用,!是逻辑求反 使用后!a 比如a=1 则 !a=0 一般是用IF判断时用 比如if(!a) 的意思是如果a==1 的意思,这样写比较好,两者的差别比较大

looping1989说的是对的,
yl62803112 说的"!是对十进制而言“,不知道是什么意思,
难道只有在十进制中才有”真“和”假“的概念吗?

-按位求反,0变1,1变0,结果为2进制数串;
!逻辑非,结果为true,false