Wert einlesen aus Datei
-
Jede neue Zahl ist in einer neuen Zeile.
-
Ernd schrieb:
Jede neue Zahl ist in einer neuen Zeile.
Dann ist doch ganz einfach
Prinzip:char buf=0; double xx=0; while(!feof(datei_ptr)) { fscanf(datei_ptr,"%lf",buf) }
Mit der Funktion Scanst du die ganze Datei und zwar Zeilenweisse.
bis die datei zu ende ist.mit xx=atof(buf); kannst du z.b. dann auf double wandlen.
-
Das Funktioniert ja. In einer Vorherigen Funktion konnte ich jeden Wert lesen. Nur jetzt liest der aufeinmal einen Total wirren Wert.
-
Ich habe gerade die Lösung meines Problemes selber gefunden. Es lag daran das die Variable Werte in der Funktion display definiert war. Der Pointer auf die Datei jedoch Gobal war.
Trotzdem vielen Dank für die Hilfe.
Ernd
-
Chris233 schrieb:
Ernd schrieb:
Jede neue Zahl ist in einer neuen Zeile.
Dann ist doch ganz einfach
Prinzip:char buf=0; double xx=0; while(!feof(datei_ptr)) { fscanf(datei_ptr,"%lf",buf) }
Mit der Funktion Scanst du die ganze Datei und zwar Zeilenweisse.
bis die datei zu ende ist.mit xx=atof(buf); kannst du z.b. dann auf double wandlen.
Dieser Quellcode ist nicht dein Ernst, oder?!?
-
Meiner ???
-
@Ernd
Nein der von Chris.
-
@ernd
verbesserungsvorschlag:
es macht keinen sinn in jeder renderloop die werte neu aus einer datei zu laden, ausser du änderst die datei zur laufzeit. wenn du sie änderst dann nehme ich alles zurück, ansonsten wäre dieses verschwendung von resourcen.
-
Ich verstehe nicht wie du das meinst.
Ich lade den Wert. Gehe in die while-schleife. Bestimme die Farbe. Und zeichne den Punkt. Dann lese ich den nächsten Wert und Zeichne auch den dazugehörigen Punkt.
-
die funktion display(); wird wieder und wieder von der mainloop aufgerufen oder machst du nur einen rendervorgang und beendest dann das programm.
-
Achso. Du meinst wahrscheinlich in der main oder? Das habe ich nur zum debuggen gemacht. Damit das programm in die Funktion springt.