[問題] 算子計算的優先順序!

看板Programming作者 (張三立)時間16年前 (2009/03/31 15:28), 編輯推噓1(104)
留言5則, 3人參與, 最新討論串1/1
算子的優先順序,常常有兩種考慮: 其一,是結合性的優先順序,這也是教科書裡提的。 其二,是計算的優先順細,這個部份經常是「未定義」的狀態。 不過就計算上的優先順序來說,逗號(comma)是被規定為有固定的優先順序。 現在我想問的是三元算子: "?:" 是否在計算上有規定優先順序呢? 也就是說 exp1 ? exp2 : exp3 是否有規定優先順序呢? 舉個例子來說: x = ((a+=5) < 10) ? (a+3) : (a+7); 以這個算式來說,是否保證 a+=5 會被計算呢? 卸卸。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.111.126.31

03/31 15:54, , 1F
當然是會算到 你應該是要問a+=5會不會在
03/31 15:54, 1F

03/31 15:54, , 2F
後面a+3和a+7之前計算吧,不然不成問題
03/31 15:54, 2F

03/31 16:27, , 3F
對對,我就是要問是否會被先計算?
03/31 16:27, 3F

03/31 16:27, , 4F
我就是問是否有針對這個算子做規定。
03/31 16:27, 4F

03/31 21:53, , 5F
既然會有疑問,為何還要這麼寫呢?
03/31 21:53, 5F
文章代碼(AID): #19qSO7pw (Programming)