Re: [問題] 前置運算子的優先權問題(暴難的觀念!!)

看板C_and_CPP (C/C++)作者 (contemplation)時間19年前 (2006/02/09 00:39), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/1
※ 引述《Barlog (巧克力魔人)》之銘言: : 借用樓下網友的例子 : a=3; : b=(--a)*(a++)*(a--)*(a--); : --a,這時a=2 : b=2*2*2*2=16 : 運算完後,再a++,a--,a-- : 所以a=1 大家講得很開心, 完全沒看到板大的文章嗎 orz 我來幫忙貼前板主精心整理出來的 FAQ 中的一部份 詳見置底文~ 九、你不可以在一個運算式(expression)中,對一個基本型態的變數修改其值 超過一次以上。否則,將導致未定義的行為(undefined behavior)。 錯誤例子: int i = 7; int j = ++i + i++; 正確例子: int i = 7; int j = ++i; j += i++; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.55

02/09 02:39, , 1F
總有出題者搞不清楚,也總有學生從輸出結果反推來猜
02/09 02:39, 1F
文章代碼(AID): #13wXx6P4 (C_and_CPP)
文章代碼(AID): #13wXx6P4 (C_and_CPP)