c/c++中,!! 有什么特殊含义?

c/c++中,!! 有什么特殊含义?
比如,b = !!a

5个回答

并非多此一举。。。
首先!a得到的是0或者1
然后再取反!
如果a=2
b=a和b=!!a得到的b的结果显然是不同的

caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 嗯,按位的话的确不同
大约 4 年之前 回复

判断A的值的真假,并且将A的真假的值赋值给B,A的真假,就是为0和1如果A为0,,(b=!!a)为假,且执行b=0,如果,A的值a!=0,(b=!!a)的值为真,执行b=1;

 b = !!a 就是 b = a
好比
b = a + 1 - 1
纯属多此一举。

好比说你是一个坏人,我也可以说你不是一个好人,或者说你不是一个坏人才怪。
所以a也可以是!!a,或者!!!!a,!a也可以是!!!a

好的,谢谢大家的回复。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐