Undefined behaviour?
-
Hola!
while (*s) *s++ = *(s+1);
Das Schipsel soll das Zeichen *s löschen und alle folgenden Zeichen bis zum Ende der Zeichenkette kopierren, inklusive der Null.
Schnipsel funzt soweit, ist das ok so, oder undefiniertes Verhalten.
Bye,
b.n.
-
Undefiniert, weil nicht klar ist, wann die Erhöhung von s passiert.
-
wiso ist das nicht klar?
Ich dachte die inkrementierung wird, nach abarbeitung der gesammten epression durchgeführt, also in dem Fall nach der zuweisung
-
Sie wird irgendwann, spätestens beim Erreichen des nächsten Sequenzpunktes (hier: Anweisungsende), durchgeführt.