Я делаю проект по файловым системам на курсе по университетским операционным системам, моя программа на С должна имитировать простую файловую систему в читаемом человеком файле, поэтому файл должен быть основан на строках, а строка будет «сектором» , Я узнал, что строки должны иметь одинаковую длину, чтобы их можно было перезаписать, поэтому я добавлю их нулями ascii до конца строки и оставлю определенное количество строк нулей ascii, которые можно заполнить позже.
Сейчас я делаю тестовую программу, чтобы увидеть, работает ли она так, как я хочу, но это не так. Критическая часть моего кода:
file = fopen("irasproba_tesztfajl.txt", "r+"); //it is previously loaded with 10 copies of the line I'll print later in reverse order
/* this finds the 3rd line */
int count = 0; //how much have we gone yet?
char c;
while(count != 2) {
if((c = fgetc(file)) == '\n') count++;
}
fflush(file);
fprintf(file, "- . , M N B V C X Y Í Ű Á É L K J H G F D S A Ú Ő P O I U Z T R E W Q Ó Ü Ö 9 8 7 6 5 4 3 2 1 0\n");
fflush(file);
fclose(file);
Теперь ничего не происходит, файл остается прежним. В чем может быть проблема?
Спасибо.