看板 Programming 關於我們 聯絡資訊
算子的優先順序,常常有兩種考慮: 其一,是結合性的優先順序,這也是教科書裡提的。 其二,是計算的優先順細,這個部份經常是「未定義」的狀態。 不過就計算上的優先順序來說,逗號(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