Записать в файл цифру или любой другой символ - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Любители писать програмки, подскажите как мне загнать в файл цифру/символ из переменной.
int main()
{    
int i=0,j=0,nl=0,op=0;
char yyy=0;
char a[1019776];
 
FILE *ff  = fopen( "c:\\111.bmp", "r" ); // r-чтение
FILE *xxx = fopen( "c:\\111.txt", "a" ); // а-дописать
    
    while(!feof(ff)) 
    {
    a[i]=fgetc(ff); 
    i++; 
    } 
    while(j!=i) 
    {
    if (a[j]!=0) nl=0;
    if (a[j]==0) 
        {
        nl++;
        if (nl==19) op=1;
        }
    if (op==1) {printf("%d",a[j+1]);}
    j++;
    yyy=a[j];        // НЕЗЯ
    fputs (yyy,xxx); // НЕЗЯ причем fputs ("text",xxx); Можно
    }
printf ("\n\nAll Symbol = %d" , i);
printf ("\nAll Symbol = %d" , j);
getchar();
fclose(ff);
return 0;
}

Решение задачи: «Записать в файл цифру или любой другой символ»

textual
Листинг программы
#include <stdio.h>
 
 int main()
 {
     FILE *fp = fopen("файл.txt", "r");
     int c;
     c = getc(fp);
     while (c != EOF) {
         /* Выводим файл в stdout */
         putchar(c);
         c = getc(fp);
     }
     if (feof(fp))
       puts("Конец файла достигнут.");
     else if (ferror(fp))
       puts("Ошибка чтения из потока.");
     else
       /*НЕ ДОСТИГНУТ*/
       puts("getc() завершилась с неопознанной ошибкой.");
 
     fclose(fp);
     return 0;
 }

Объяснение кода листинга программы

В этом коде выполняется следующая последовательность действий:

  1. Открытие файла:
    • Строка FILE *fp = fopen(файл.txt,r); открывает файл с именем файл.txt для чтения.
    • Значение переменной fp теперь является дескриптором файла, который используется в последующих вызовах функций для работы с файлом.
  2. Чтение файла:
    • Цикл while (c != EOF) читает файл построчно до тех пор, пока не достигнет конца файла (EOF).
    • На каждой итерации цикла значение c становится следующим символом в файле.
    • Значение c выводится в stdout с помощью функции putchar().
  3. Проверка ошибок:
    • Если достигнут конец файла (EOF), то выводится сообщение Конец файла достигнут. с помощью функции puts().
    • Если произошла ошибка чтения из потока, то выводится сообщение Ошибка чтения из потока. с помощью функции puts().
    • Если произошла ошибка, не распознанная функцией getc(), то выводится сообщение getc() завершилась с неопознанной ошибкой. с помощью функции puts().
  4. Закрытие файла:
    • Вызов fclose(fp); закрывает файл.
  5. Возврат значения:
    • Возвращается значение 0, что означает успешное выполнение программы. Таким образом, этот код считывает файл построчно и выводит каждый символ в stdout. Если происходит ошибка чтения из файла, выводится соответствующее сообщение об ошибке.

Оцени полезность:

12   голосов , оценка 4.333 из 5
Похожие ответы