Mein Code ist dazu gedacht, ein Array rückwärts zu drucken, aber aus irgendeinem Grund funktioniert der Dekrementoperator nicht wie erwartet. Nach meinem Verständnis --var
dekrementiert die Variable var
bevor etwas getan wird, während var--
die Variable var
dekrementiert, nachdem eine Operation wie eine for
Schleife abgeschlossen wurde.Seltsames Verhalten mit Dekrementoperator
Hier ist mein Code:
#include <iostream>
int main() {
int arrLen;
int arr[4];
scanf("%d\n %d %d %d %d", &arrLen, &arr[0], &arr[1], &arr[2], &arr[3]);
for (; arrLen >= 0; --arrLen)
printf("%d %d\n", arr[arrLen], arrLen);
return 0;
}
Und hier meine Ergebnisse sind (der richtige Wert in der Ausgabe ist die dekrementiert Variable, fügte ich hinzu, es zu überprüfen):
0 4
2 3
3 2
4 1
1 0
Ohne die dekrementiert Variable, die gedruckt es sein sollte:
0 2 3 4 1
Hier sind meine erwarteten Ergebnisse:
2 3 4 1
Warum "\ n" verwenden, in scanf() Funktion? –
@ M.SChaudhari Nach einem int suchen gefolgt von einem \ n –
Wie hat diese Frage 3 Stimmen bekommen, die ich nicht verstehe .... – ZivS