это просто fgets и возвращают \n
, когда он читается (он не отбрасывается), а запись с помощью ставит , вы добавляете другой \n
после печати,таким образом, у вас есть 2 \n
создание пустой строки
Замените puts(str);
на fputs(stdout, str);
, и у вас не будет пустых строк
Примечание: вывод нене соответствует началу файла, может быть его конец?
если я добавлю
P2
# CREATOR: GIMP PNM Filter Version 1.1
445 243
255
108
107
104
102
102
в файл, который дает выполнение:
pi@raspberrypi:/tmp $ ./a.out
Testing fgets() function:
Reading contents of myfile.txt:
P2
# CREATOR: GIMP PNM Filter Ve
rsion 1.1
445 243
255
108
107
104
102
102
одна строка обрезана, поскольку содержит более 29 символов