Nie rozumiem niektórych zdań w C99
W C99 6.5 mówi:
Pomiędzy poprzednim i następnym punktem sekwencji obiekt powinien mieć zapisaną wartość co najwyżej raz przez ocenę wyrażenia. Ponadto wartość wstępna powinna być odczytywana tylko w celu określenia wartości, która ma być przechowywana
Co oznacza „Co więcej, wcześniejsza wartość powinna być odczytywana tylko w celu określenia wartości do przechowywania”? W C99, dlaczegoa[i++] = 1
jest niezdefiniowane zachowanie?