線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:721
推到 Plurk!
推到 Facebook!

AND問題一問

尚未結案
BAY
一般會員


發表:1
回覆:1
積分:0
註冊:2003-07-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-07-08 00:42:59 IP:218.174.xxx.xxx 未訂閱
int i.j; i=2 && (j=2); printf(i.j); 輸出答案是1跟2 不太清楚做AND時步驟啦...^^" 麻煩說詳細點...謝謝
hsu6536
一般會員


發表:3
回覆:5
積分:1
註冊:2002-06-07

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-07-08 08:04:08 IP:219.90.xxx.xxx 未訂閱
這應該是logical AND吧 我想多加一組括號您會更清楚吧 i = (2 && (j=2)); 所以依據您寫的會變成把 2&&2 之後的值assign給i 而相信您應該知道 2&&2 會是true (當兩邊的 expressions 都是非0值時logical AND會回傳 true) (詳細的自己看看書或help吧,應該寫得很清楚) 所以i會變成true(一般來說true是1,false是0)    因此你得到的結果會是1 跟2    -- No Signature! 發表人 - hsu6536 於 2003/07/08 08:06:43
------
No Signature!
dllee
站務副站長


發表:321
回覆:2519
積分:1711
註冊:2002-04-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-07-08 08:11:17 IP:61.224.xxx.xxx 未訂閱
int  i.j; //宣告兩個整數變數 i=2 && (j=2);//在執行指定式時,右邊的運算會先處理,其中又以 ( ) 小括號會先處理,在此,(j=2) 的意思是設定 j 這個變數為 2 ,同時,表示整個 (j=2) 這個東西的數值也是 2,所以 i=2 && (j=2) 就相當於 j=2; i=2 && j; 在處理完 j=2 之後,就作 && 的運算,而 (2 && 2) 表示 非零(true) 且 非零(true) 所以結果是 true ,而在 C/C 中大部分的組譯器會用 1 來表示 true ,但有少部分會用 -1 來表示 true ,如果您用的是用 1 來表示 true,則經過此式運算後,i=1, j=2 printf(i.j);這個式子應該有錯吧,還是說您用的是其他的 C/C ? printf("i=%d,j=%d",i.j); //這樣可以秀出 i,j 值 沒空更新的網頁... http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... http://dllee.adsldns.org 介紹Shells,LiteStep,GeoShell....
------
http://www.ViewMove.com
BAY
一般會員


發表:1
回覆:1
積分:0
註冊:2003-07-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-07-08 10:16:45 IP:218.174.xxx.xxx 未訂閱
謝謝兩位大大覆...^^
系統時間:2024-05-03 13:35:17
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!