一、簡要說明
按位與:a&b是把a和b都轉換成二進制數然后再進行與的運算;
邏輯與:a&&b就是當且僅當兩個運算元均為 true時,其結果才為 true;只要有一個為零,a&&b就為零,
例如:
a&b 9&8
1001
1000
結果是1000
a&&b 9&&8 結果是1
&對每一個都判斷;
&&只要前面是false就輸出false,而不繼續判斷后面了,

二、詳細解釋
有關&和&&的詳細解釋如下:
1、&,雙目運算子:將兩個運算式的值按二進制位展開,對應的位(bit)按值進行“與”運算,結果保留在該位上…
比如170&204
對應二進制就是
10101010B
&11001100B
=10001000B…
170&204=136…
該位只要有一個值為0結果為0,否則結果為1,
如果兩數位數不同,則較短數高位補零,再運算,比如char a=100;intb=260;
a&b實際是0000 0000 01100100&0000 0001 0000 0100.其結果為int型0000 0000 0000100即4…
2、&&:雙目運算子,計算兩個運算式同時成立的“真值”(同時成立真值為真否則為假)
邏輯真值有兩種,1為真,0為假,但在運算時用非零表示真,0表示假…
即:數值->邏輯真值--非0為真,0為假/邏輯真值->數值--真為1,假為0…
例如:chara=1,b=0,c=-1;那么a真b假c真,a&&b和c&&b為假值為0,a&&c為真值為1,

以上就是關于對C語言&與&&的區別的詳細介紹,希望對大家的學習有所幫助,

最后,如果你也想成為程式員,想要快速掌握編程,趕緊加入學習企鵝圈子!
里面有資深專業軟體開發工程師,在線解答你的所有疑惑~編程語言入門“so easy”
編程學習書籍:

編程學習視頻:

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/250437.html
標籤:C
上一篇:嵌入式開發中,C語言結構體詳解
下一篇:編譯lua可執行程式
