Ho il seguente codice diComportamento di un'espressione: definito o non definito?
int m[4]={1,2,3,4}, *y;
y=m;
*y = f(y++); // Expression A
Il mio amico mi ha detto che Expression A
ha un comportamento ben definito, ma io non sono sicuro se sia corretta.
Secondo lui la funzione f()
introduce uno sequence point
in mezzo e quindi il comportamento è ben definito.
Qualcuno si prega di chiarire.
P.S: So che non dovremmo scrivere tale codice per scopi pratici. È solo per lo scopo dell'apprendimento. :)
Dico no. A questo mi dice 'gcc'. – kennytm