Вывод текста из файла на экран - C (СИ)

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

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

среда разработки BC.31. ошибку не выдает, но и текст не читает из файла... что в коде не так? и как вывести на экран текст из файла?)
 
 #include <stdio.h>
 #include <conio.h>
 main()
 {
 FILE * h 
 char n;
 hi=fopen("C:\\test.txt","rt");
 while(!feof(hi))
 {
 fscanf(hi,"%s",&n);
 }
 fclose(hi);
 getch();
 return(0);
 }

Решение задачи: «Вывод текста из файла на экран»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define FILENAME "input.txt"
#define SIZE 256
 
int main(void) 
{
    char buf[SIZE] = { 0 }, *text = NULL;
    FILE* file = fopen(FILENAME, "rt");
    size_t i = 0; 
 
    text = (char*)calloc(1, sizeof(char));
 
    while (fgets(buf, SIZE, file) != NULL)
    {
        if (i % 2 == 0) 
            text = (char*)realloc(text, SIZE * (i + 2));
        strcat(text, buf);
        ++i; 
    }
 
    printf("%s", text);
    
    fclose(file); 
    free(text);  
    return 0;
}

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

  1. Подключение необходимых библиотек для работы с файлами и строками.
  2. Определение переменных: — buf — буфер для чтения данных из файла, — text — строка, в которую будут добавляться прочитанные данные, — file — указатель на файл, — i — счётчик, используемый в цикле.
  3. Выделение памяти под буфер и строку.
  4. Чтение данных из файла и добавление их в строку с помощью функции strcat.
  5. Реализация цикла, который будет выполняться до тех пор, пока не будет прочитана последняя строка файла.
  6. Проверка чётности счётчика i, чтобы не превысить размер выделенной памяти.
  7. Вывод содержимого строки text на экран.
  8. Закрытие файла и освобождение памяти, выделенной под строку.
  9. Возврат значения 0, что означает успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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