Habe da ein Problem mit einem Programm.Als C-Newbie lerne ich diese Sprache noch,das Schreiben in eine Datei per fprintf klappt,jedoch weiß ich nicht wie ich aus dieser Datei Text lesen und an eine Variable weitergeben kann oder diesen Text irgendwie ausgeben kann.
In die .txt werden Zahlen geschrieben,ist ein kleines Proggi,nichts großartiges,der Source ist weiter unten.Hoffe mir kann da irgendwer weiterhelfen:
int save (int eingabe[])
{ int i;
FILE *high;
high=fopen("highscore.txt","wt");
fprintf (high,"\\nHighscore\\n\\n");
for (i=0;i {
fprintf (high,"%d\\n",eingabe[i]);
}
fclose (high);
}
int lesen()
{ int i,a[10];
FILE *high;
high=fopen("highscore.txt","r");
printf ("\\n\\nAusgabe:\\n");
for (i=0;i {
fscanf(high,"r",a[i]);
printf ("%d\\n",a[i]);
}
fclose (high);
}
int main(void)
{int i, eingabe[10];
for (i=0;i {scanf ("%d",&eingabe[i]);
}
save(eingabe);
lesen();
system("PAUSE");
return 0;
}
Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge
1. Es stehen noch drei extrazeilen am anfang der textdatei, die übersprungen werden müssen.
z.b.
fscanf(high,"%[^\n]\n",buff);
wobei buff ein ausreichend grosser speicherbereich ist (char buff[MAXLINELEN]; , MAXLINELEN nach wahl).
2. So wie
fprintf (high,"%d\n",eingabe[i]);
die zahl als text ausgibt, liest
fscanf(high,"%d",a[i]);
die zahl wieder ein (was sollte "r" bedeuten? evtl. reste vom öffnen mit fopen?)
mr.escape