Ich lerne für meine Prüfung in C und lese in einer C-Zusammenfassung, die ich von einer Website heruntergeladen habe. Es steht geschrieben, dass es nicht erlaubt ist, zu schreiben arr[i]
wobei i
ist eine Variable. Der einzige Weg, dies zu tun, ist mit malloc.
Allerdings habe ich den folgenden Code geschrieben und er kompiliert ohne Warnungen und ohne Fehler auf valgrind:
int index = 5;
int a4[index];
a4[0] = 1;
a4[1] = 2;
int index2;
scanf("%d",&index2);
int a5[index2];
a5[0] = 1;
a5[1] = 2;
Was ist also die Wahrheit hinter den Array-Erklärungen? Vielen Dank!