Okay, ich kenne die Ausgabe für den Ausdruck (x * = y = z = 4;) ist 40; aber wie genau haben wir 40 bekommen? Können Sie mir bitte Schritt für Schritt zeigen?Lösen von zusammengesetzten Zuweisungsausdrücken
dachte ich, der Vorrang von rechts ist so nach links (2 * 4) = (z = 4), verstehe ich nicht
#include <stdio.h>
#define PRINTX printf("%d\n",x)
int main (void){
int x = 2, y, z;
x *= 3 + 2;
PRINTX;
x *= y = z = 4;
PRINTX;
x = y == z;
PRINTX;
x == (y = z);
PRINTX;
return 0;
}
Gute Frage übrigens. – EJoshuaS