1樓:同學叫我神
這其實沒必要深入,只要知道如果有計算的話,那就先從右邊開始計算,然後再從左邊開始輸出
所以cout<
輸出為14 13 12
而cout<<12<<13<<14;
輸出為12 13 14
其實沒人會在輸出時還連帶計算的,這題只是告知一下有這樣的事而已,任何一個程式設計師也不能保證他寫出像上面那條一樣的語句時不會發生他不知道的錯誤
所以保險起見
一般cout只輸出一個,或不連帶計算的
所謂一條語句只做一件事嘛,這也是準則
2樓:紫翼魔狼
輸出是從左向右,計算是從右向左,不過,據說,計算的方向在標準中沒有定義,要看編譯器的定義了。
3樓:
#include
using namespace std;
int main()
用我這個試試,輸出順序是12 13 14。
4樓:迫降愛琴海
編譯器掃描你的表示式時是從左到右的,也就是先計算最後一個"i++",因為它最先被編譯器發現,然後計算第二個"i++",最後第一個"i++";最後的輸出就是你寫的表示式的自然順序了
5樓:匿名使用者
這個輸出結果和編譯器有關係:
1、mingw2.95編譯器,不能通過編譯,3個錯誤。
2、mingw5.16編譯器,可以通過,無錯誤警告輸出結果是:
12 13 14
3、bcc5.5編譯器,可以通過編譯,無錯誤有兩個警告:輸出結果是:
14 13 12
4、vc6.0編譯器,可以通過,無錯誤警告,輸出結果:14 13 12
有此可見這個輸出結果順序和編譯器有很大的關係啊!!
C語言輸出問題,C語言的輸出問題?
d的名字叫做格式說明符.格式說明符由兩部分組成,前面是 號 後面是一個小寫字母 不同的格式說明符代表不同的輸出格式,這裡,前面這個 d就是將對應的變數c以整數形式輸出.後面這個 d就是將對應的變數d以整數形式輸出.f是浮點數格式,也就是將變數以小數點的形式輸出,比如c 1 printf f c 那螢...
C 序輸出問題,C語言反序輸出問題
這麼給你說吧。string arr new string hello word 你這個是對的,但是你想倒序輸出的時候就有問題了。你這個沒必要用字串陣列,字串也有索引的。string arr hello word for int i i 0 i 這個是在vs2008裡的語法,你用的response...
c 輸出運算子過載問題,C 運算子過載 為什麼流運算子不能過載為成員函式?
呵呵,ostream os就是cout 所以cout node endl 就是先 cout node 根據friend ostream operator ostream os node temp 知輸出node,然後生成新的流物件cout,就變成了cout endl,又是cout 和endl的過載,...