c语言中&,|,还有^都个指是什么意思

怎么个算法,比如3&5 请问和&&,||,!,有什么区别吗

这些都是位运算符
&是按位与,规则:1&1=1,1&0=0,0&0=0;
|是按位或,规则:1|1=1,1|0=1,0|0=0;
^是按位异或,规则:1^1=0,1^0=1,0^0=0
;
位运算符需要将数值转化为二进制:3&5=011B&101B=001B=1(B表示二进制)
&&,||,!是逻辑运算符,&&是逻辑与;||是逻辑或;!是逻辑非。0为假,非0为真。如:a=8,b=6,c=0,那么a&&b为真,a||b为真,b&&c为假,!a=0,!c=1.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-08-10
&是位运算与
|是位运算或
^是位运算异或
名称
符号
规则
按位与
&
全一则一,否则为零
按位或
|
有一则一,否则为零
按位取反
~
是零则一,是一则零
按位异或
^
不同则一,相同则零
移位
>>和<<
向右、向左移位
优先级
~
>>和<<
&
^
|
相似回答