Re: [問題] 新手十誡疑問

看板C_and_CPP (C/C++)作者 (我是蜜蜂~)時間16年前 (2009/02/04 20:27), 編輯推噓4(405)
留言9則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《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
先謝謝。可以給我不是特例的嗎?<<i++<<i;的特例,
02/04 20:30, 1F

02/04 20:30, , 2F
非<<i++ + i;
02/04 20:30, 2F

02/04 20:31, , 3F
就.. a<<i++<<i a是個int
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
哈,你一定覺得我很煩,辛苦你了,3Q!
02/04 20:41, 8F

02/04 20:42, , 9F
不會啦 有動腦想是好事XD
02/04 20:42, 9F
文章代碼(AID): #19YOdEE7 (C_and_CPP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #19YOdEE7 (C_and_CPP)