inkrement & dekrement - operatoren
-
Hallo,
Gibt es eine logische Erklärung für die Präfis & Postfix Varianten dieser Operatoren. Meine Erklärung z. B. zum Inkrement-Operator:
1. Präfix --> Wie der Name sagt : Vor / zu Beginn / am Anfang von alles ( vor der Auswertung, vor der Berechnung ... )
2. Postfix --> Wie der Name sagt : Nach / zum Schluss / am Ende von alles ( nach der Auswertung , nach der Berechnung ... ) , ich brauche eine log. Erklärung
-
Ich zitiere einfach mal aus dem Buch C von A bis Z, Kapitel 8.4: Inkrement- und Dekrement-Operatoren
Die Postfix-Schreibweise erhöht bzw. erniedrigt den Wert von var, gibt aber noch den alten Wert an den aktuellen Ausdruck weiter.
Die Präfix-Schreibweise erhöht bzw. erniedrigt den Wert von var und gibt diesen Wert sofort an den aktuellen Ausdruck weiter.Hierzu ein Beispiel: /* incr.c */ #include <stdio.h> int main(void) { int i=1; printf("i=%d\n",i); // i=1 i++; printf("i=%d\n",i); // i=2 printf("i=%d\n",i++); // i=2 printf("i=%d\n",i); // i=3 printf("i=%d\n",++i); // i=4 return 0; }
-
null schrieb:
Gibt es eine logische Erklärung für die Präfis & Postfix Varianten dieser Operatoren.
es gibt prozessoren, die so ähnliche assembler-anweisungen kennen:
ld r1,[r0+] ; inhalt von dem, worauf r0 zeigt nach r1 kopieren. [i]danach[/i] r0 um 1 hochzählen
und weil C eine art portable assemblersprache ist (gedacht für low-level und systemprogrammierung), kennt es sowohl pre- wie auch post-increment operatoren.