Файл записи в C путаница - PullRequest
1 голос
/ 25 июня 2009

Привет, я добавляю внизу текстового файла, это работает на окнах, но на Linux, вместо добавления внизу, он добавляет к верхней части текстового файла. Код, который я использую, это. Код должен использовать только C

FILE *fout;
fout = fopen("dat.txt","a");  
fprintf(fout,"&& ");
fclose(fout);

Пожалуйста, помогите. Спасибо

Ответы [ 4 ]

1 голос
/ 25 июня 2009

Проверьте ошибки, возвращенные этими системными вызовами - этот код выглядит правильно. Кроме того, убедитесь, что вы случайно не повредили dat.txt в другом месте своего кода.

0 голосов
/ 25 июня 2009

Если вы делаете что-то еще с этим файлом до добавления, убедитесь, что вы закрываете его.

0 голосов
/ 25 июня 2009

Это должно быть хорошо. проверьте ваш код еще раз, возможно, вы перемещаете указатель файла, где-нибудь с помощью frewind или fseek. Лучше использовать опцию «+». Вам также следует проверить возвращаемое значение fout из fopen.

0 голосов
/ 25 июня 2009

Я скомпилировал на Mac OS (Linux), и он работает как рекламируется, например. строка была добавлена ​​в конце.

Вы делаете что-то еще с файлом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...