просто замените EOF на '\ n' (символ новой строки). Затем ваш код будет читать, пока не достигнет новой строки. Вот как это выглядит:
#include <stdio.h>
int main()
{
FILE *fr;
char c = ' ';
fr = fopen("prog.txt", "r");
while(c != EOF && c != '\n')
{
c = fgetc(fr); /* read from file*/
if(c != EOF){
printf("%c",c); /* display on screen*/
}
}
fclose(fr);
return 0;
}
Я еще не тестировал, но, вероятно, работает. Пожалуйста, дайте мне знать, если есть какие-то проблемы с кодом, я отредактирую его.
Edit1: char c; в строке 5 инициализируется как '' для работы с UB.
Edit2: добавление условия (c! = EOF) к while l oop в строке 7, чтобы не давать повода для бесконечного l oop.
Edit3: добавление оператора if в строку 10, чтобы не печатать EOF, что может быть причиной нечетных результатов.