Hallo, Highscore in einem Spiel.
-
Hallo ich hätte eine frage zu meinem Spiel. Ich habe folgendes Problem:
Ich möchte einen Highscore mit Name und Punktzahl in mein Spiel integrieren allerdings weiß ich nicht wie ich die Textdatei wieder auslesen soll.FILE *file = fopen("datei.txt", "a+"); if( file ) { fprintf( file, "%s %i\n", name, schuss ); fclose( file ); }
das ist mein bisheriger code fürs einlesen.
Danke im Voraus.
-
Aber du weißt, wie man google bedient? Richtig recherchieren zu können, bringt dich viel weiter, als die Antwort auf diese konkrete Frage.
Du hast doch schon viele Begriffe, nach denen du suchen kannst. z.B. FILE und fopen. Häng noch 1-2 englische Begriffe wie read dran, und du hast in paar Sekunden deine Antwort.
-
Ich glaube ich habe mein Problem nicht deutlich gemacht ich weiß auch wie man es einließt allerdings schaffe ich es nur die letzte Zeile aus der Textdatei einzulesen
-
Dein Code fürs "einlesen" ruft keine Lese-Funktion auf. Demzufolge kannst du überhaupt nichts eingelesen haben, auch die die letzte Zeile.
-
if( file ) { while(get_line) { fscanf( file, "%s", &name[0] ); // Adresse des ersten Buchstabens fscanf( file, "%i", &schuss ); // Adresse von i } }
habe ich nur vergessen einzufügen
-
if( file ) { fscanf( file, "%s", &name[0] ); // Adresse des ersten Buchstabens fscanf( file, "%i", &schuss ); // Adresse von i }
tschuldigung falscher teil
-
Jetzt liest du genau einen String mit einem durch whitespace getrennten Integer danach ein.
Du willst ja wohl mehrere Werte aus mehreren Zeilen einlesen, wohin willst du denn diese mehreren Werte abspeichern um anschließend auf alle gleichzeitig zugreifen zu können?
Dir fehlt das Grundverständnis zur Programmierung unabhängig von deiner Unkenntnis von C.
-
Du musst alle Daten die du aus der Datei einliesst im Speicher (RAM) deines PCs ablegen.
-
Als Hinweis: du benötigst ein Array.
-
@derheinz sagte in Hallo, Highscore in einem Spiel.:
Ich glaube ich habe mein Problem nicht deutlich gemacht ich weiß auch wie man es einließt allerdings schaffe ich es nur die letzte Zeile aus der Textdatei einzulesen
Soll es nur der Hiscore sein, reicht eine Zeile. Also: vor dem Schreiben die Datei löschen (gibt ein fopen-Flag dafür).
-
@wutz sagte in Hallo, Highscore in einem Spiel.:
Dir fehlt das Grundverständnis zur Programmierung unabhängig von deiner Unkenntnis von C.
Sehr geehrter Herr Wutz,
ich entschuldige mich, dass ich leider nicht das nötige Grundverständis zur Programierung habe, aber es kann ja nicht jeder so hoch entwickelt sein wie sie.
MfG
Derheinz
-
Aber noch Danke für die Antworten