C語言的邏輯觀念的問題

2013-04-07 6:23 am

int i ;

i = (2&&4)+3 ;

則 i 值為何?


//數字AND數字???
更新1:

2&&4 是要變成10&&100 = 000 為何2&&4是1

回答 (4)

2013-04-09 6:52 am
✔ 最佳答案
感覺上有很嚴重的邏輯問題, 不寫在意見欄, 忍不住一定要寫在這
and 明明是 bool, 寫程式把它拿來當數值玩, 最近的軟體常跨平台像 Android/Linux/Window用不同語言 vb/C#/Java/C++...各種軟體的 bool 大多不同, 也就是你這樣想, 跨平台就讓你吃不完兜著走! 養成好習怪吧!
bool 給你判斷 true/False 用的
*p 指標給你位置, 請不要跟 0 作判斷
數字請不要當 true/false 判斷, 像 if( 0), if(1) - 暫時用用就算了!
bit operator 拿來當 true/false 判斷, 像 if( i & 1)
char/int/short/long 之間的比較, 還可以接受, 但注意正負號問題.

請直接回出題的說題目錯了!
2013-04-09 8:01 am
C語言有位元AND(&)邏輯運算1&1為1,0&1為0 ,1&0為0,0&0為0

也有變數的AND(&&)邏輯判斷 2&&4為1 ,這裡除了0(假)以外其他任何數字都為

真,兩數同時為真結果為 1,只要有一個數為0(假)或兩數為0(假)結果為0(假) ,

2013-04-09 00:23:35 補充:
補充一下

&& 這不是做位元運算,兩數同時為真( 除0以外其他任何數字都為真 ) 結果為

1,只要有一方是0或兩方0結果都為0,只有兩個答案不是0就是1
2013-04-08 9:27 pm
C裡0為非,非0為是
true&&true=true
else
(...)=false

2為true
4為true
2&&4為true=1
以上
2013-04-07 6:39 am
2&&4=1
i=1+3=4
/////
&& 為邏輯判斷
邏輯判斷的結果分兩種
真為1
假為0


收錄日期: 2021-05-04 02:08:46
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20130406000016KK04787

檢視 Wayback Machine 備份