Werte aus Datei in mehrdimensionales Array einfügen
-
Hallo zusammen,
ich habe eine Datei mit mehreren int-Werten, die jeweils durch ein Leerzeichen oder Zeilenumbrüchen getrennt sind.
Ich möchte nun die Datei durchlaufen und jede Zahl in einem zweidimensionalen Array abspeichern.Beispiel:
10 14 9 356 232 1 43 571 98 90 87 5 2 12 29
Mein Problem ist wahrscheinlich das Behandeln von Zeilenumbrüchen.
while ((c = fgetc(MYFILE)) != EOF) { while ((c = fgetc(MYFILE)) != '\n') { fscanf(MYFILE, "%d", &myArray[i][j]); i++; } j++; }
Bei diesem Programmcode wird in mein Array immer der letzte Wert aus Zeile in mein Array gepackt, also in dem Fall 356, 90 und 29.
Wo genau ist mein Fehler?EDIT: Ich weiß wo ein Fehler bereits ist.. mein Programm läuft nur die erste Zeile durch und danach nicht mehr. Wie kann ich denn sagen, dass er in die nächste Zeile laufen soll?
-
whizzkid23 schrieb:
while ((c = fgetc(MYFILE)) != EOF) { while ((c = fgetc(MYFILE)) != '\n') {
fgetc "verschiebt" den filepointer, d.h. du ließt nicht alle Zahlen ein.
Tipp: mehr als fscanf brauchst du nicht.
Obwohl fgets + sscanf etwas einfacher wäre.