作者loteslogin (張三立)
站內Programming
標題[問題] 算子計算的優先順序!
時間Tue Mar 31 15:28:06 2009
算子的優先順序,常常有兩種考慮:
其一,是結合性的優先順序,這也是教科書裡提的。
其二,是計算的優先順細,這個部份經常是「未定義」的狀態。
不過就計算上的優先順序來說,逗號(comma)是被規定為有固定的優先順序。
現在我想問的是三元算子: "?:" 是否在計算上有規定優先順序呢?
也就是說 exp1 ? exp2 : exp3 是否有規定優先順序呢?
舉個例子來說:
x = ((a+=5) < 10) ? (a+3) : (a+7);
以這個算式來說,是否保證 a+=5 會被計算呢?
卸卸。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.111.126.31
→ MOONRAKER:當然是會算到 你應該是要問a+=5會不會在 59.120.168.228 03/31 15:54
→ MOONRAKER:後面a+3和a+7之前計算吧,不然不成問題 59.120.168.228 03/31 15:54
→ loteslogin:對對,我就是要問是否會被先計算? 140.111.126.31 03/31 16:27
→ loteslogin:我就是問是否有針對這個算子做規定。 140.111.126.31 03/31 16:27
推 jtmh:既然會有疑問,為何還要這麼寫呢?218.175.157.233 03/31 21:53