Re: [問題] 新手十誡疑問
※ 引述《cfbbq (CF)》之銘言:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 125.224.150.217
: → james732:應該就是不要在同一行裡面對一個變數又改又讀的意思...? 02/04 18:10
: → cfbbq:我知道,但是我覺得沒錯阿,只要不要<<i++ + i;這種就好吧? 02/04 18:13
: → cfbbq:<<i++<<i;這不是一個運算是阿! 02/04 18:14
: 推 ledia:<< 也是運算子呀 02/04 18:27
: 推 LPH66:問題如同前幾篇 i++結算的時間不確定 02/04 18:33
: → LPH66:雖然順序是由左到右 (<<是左結合) 但i++卻不確定會何時結算 02/04 18:33
: 推 StubbornLin:http://0rz.tw/d74Qx 02/04 19:17
: → cfbbq:我的疑問是:cout<<i++<<i;跟cout<<i++;cout<<i;似乎等於? 02/04 19:45
: → akasan:表面上一樣而已cout<<i++;cout<<i;會保證其求值順序 02/04 20:14
: → akasan:cout<<i++<<i;則是無法確定到底是i先求值還是i++先求值 02/04 20:15
其實可以 這邊是特例..
function call之前有sequence point
這邊的cout<<i++<<i等價於cout.operator<<(i++).operator<<(i)
可以保證i++先被evaluate, 而且在eval第二個i之前加一
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.156.17
推
02/04 20:30, , 1F
02/04 20:30, 1F
→
02/04 20:30, , 2F
02/04 20:30, 2F
→
02/04 20:31, , 3F
02/04 20:31, 3F
推
02/04 20:31, , 4F
02/04 20:31, 4F
推
02/04 20:35, , 5F
02/04 20:35, 5F
→
02/04 20:38, , 6F
02/04 20:38, 6F
→
02/04 20:38, , 7F
02/04 20:38, 7F
我覺得他的重點是"不管什麼場合都不要這樣寫"
只是剛好舉了一個保證不會錯的例子(汗
※ 編輯: Fenikso 來自: 122.116.156.17 (02/04 20:39)
推
02/04 20:41, , 8F
02/04 20:41, 8F
→
02/04 20:42, , 9F
02/04 20:42, 9F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章