Ich habe einen ähnlichen Code.Schreiben und Lesen von einer Datei
#include <stdio.h>
int main() {
FILE* file = fopen("file.txt", "w+");
fputc('A', file);
fflush(file);
char buff;
fscanf(file, "%s", &buff);
printf("read data: %s", &buff);
fclose(file);
return 0;
}
Ich möchte ohne Datei schließen geschriebene Daten lesen. Aber in Buff gibt es keine Daten. Warum? Wenn ich Datei nach dem Schreiben zu schließen und dann alles zu lesen, funktioniert.
Sie müssen versuchen, dorthin zurück, wo die Daten zur Verfügung zu lesen ist. Oder spulen Sie die Datei nach dem Schreiben zurück. –
Und nicht '% s' zum Einlesen oder' printf() 'von einem einzelnen' char' verwenden. –