В файл записывается мусор - C (СИ)
Формулировка задачи:
Я запутался с записью в файл. Короче вот часть кода
В итоге в файле у меня мусор какой-то
int bufer[n]; //он заполнен числами ... FILE *out; if((out=fopen("text.txt", "w"))==NULL) { printf("Cannot open file."); return 1; } fwrite(bufer, sizeof(int), n, out); free(mas); return 0;
a^@^@^@ ^@^@^@�^@^@^@ ^@^@^@�^@^@^@�^@^@^@�^@^@^@�^@^@^@�^@^@^@�^@^@^@ ^@^@^@q^@^@^@w^@^@^@e^@^@^@r^@^@^@t^@^@^@y^@^@^@�^@^@^@
Решение задачи: «В файл записывается мусор»
textual
Листинг программы
int bufer[n]; //он заполнен числами ... FILE *out; int jx; if((out=fopen("text.txt", "wt+"))==NULL) { printf("Cannot open file."); return 1; } for(jx=0;jx<n;jx++) fprintf(out,"%d\n\r",buffer[jx]); fclose(out); return 0;
Объяснение кода листинга программы
- В начале кода объявлена массивная переменная
buffer[n]
, которая заполнена числами. - Далее, используется функция
fopen
для открытия файлаtext.txt
в режиме записи (wt+
). - Если файл не может быть открыт, выводится сообщение об ошибке и возвращается 1.
- Если файл успешно открыт, выполняется цикл
for
, который проходит по всем элементам массиваbuffer
. - Внутри цикла, используется функция
fprintf
для записи каждого элемента массива в файл, с указанием формата%d\n\r
для записи целого числа и символов новой строки. - После завершения цикла, файл закрывается с помощью функции
fclose
. - В конце кода возвращается 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д