1樓:小呆小呆
第一段**答案應該是:k=10,i=5
第二段**是第一段**的延伸,vc6把k=(++i)+(++i)+(++i);處理成
k=((++i)+(++i))+(++i);先處理前面兩項,然後把得到的10再去加上第三項,這時第三項是6,所以最後k的值為16。
不同的編譯器處理方法不一樣,答案也會有所偏差。
2樓:求知
這種問題很噁心的,一般程式就不要這麼寫,很難解釋清楚,因為這個取決編譯器tm的到底先加後用到什麼成都的,有的編譯器就是18,vc6就是16. 樓主不要為這種問題糾結的。
3樓:海獅
這個按照最新的c語言要求,直接報軟體問題了。
可以確定是一種錯誤。
因為,k=(i++)+(i++);
i=i++;
……這些都沒有語義,無論結果是多少,都沒有定義,僅僅是你的理解和編譯器的設計者的理解問題。
而不是c語言本身表達的含義。
關於C語言中自增自減運算子的疑問
對於每次判斷,會先判斷count的值是否小於5,然後count count 1如果此時條件滿足則繼續,否則退出迴圈。第1次遇到while判斷時 count 0判斷後count為1.第2次遇到while判斷時 count 1判斷後count為2.第3次遇到while判斷時 count 2判斷後coun...
C語言中自加與自減運算子前置與後置結果為什麼有時一樣有時不一樣啊,怎麼區別
智慧型it人生 這個要看你所用的編譯環境了,不同的編譯環境執行的順尋不一樣一般情況下是 如 i,i.在使用i之前,先使i的值加 減 1i i 在使用i之後,使i的值加 減 1 如 i,i.在使用i之前,先使i的值加 減 1 i i 在使用i之後,使i的值加 減 1 想得到正確答案,請提供詳細 c語言...
求助一道C語言題目,求助一道c語言題目?
萍水相逢就是緣吧 初步判斷 都可以用三角形來計算吧 三角形面積公式 哦,還得查查 李快來 一道c語言題目,發來看看,與水泥中的氫氧根離子發生反應生成矽酸鹽,與水泥中的氫氧化鈣反應生成水合矽酸鈣,引起混凝土的不均勻膨脹。 開發經驗分享 執行結果如圖所示 gcc polygon.c wall lm in...