我到K & R讀取和i的行爲碰到這個例子有關的不確定性,而像a[i]=i++
評估表達; 的C99規格書$ 6.5.2說序列點和評價的順序
一個和下一個順序點之間,對象所儲存的值由表達式求值修改最多一次。此外,先驗值只能讀取以確定要存儲的值。
上述來自K & R的例子在第一條語句中保持良好。請解釋第二次失敗的原因。
是否標準說約子表達式的評價中被捲入的序列點的情況下,爲了什麼。例如。 a[i++] || b[i++]
。我知道這些評估是從左到右進行的,但是這怎麼能從上面的陳述中得出,或者是否在標準的某個地方明確地陳述過?
[爲什麼賦值運算符不是序列點的任何好理由?](http://stackoverflow.com/questions/4362501/any-good-reason-why-assignment-operator-isnt-a-序列點) – Suma 2012-01-30 08:35:47
可能的重複的[未定義的行爲和序列點](http://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points) – Lundin 2012-01-30 13:25:50
@Lundin:這是C++。 – 2012-01-30 13:30:55