- Код: выделить все
while (ch!=EOF)
{
ch=fgetc(stream); ****
while (ch1!='\n') ch1=fgetc(stream);
}
****: В этом месте из stream будет считан символ и курсор сдвинется на символ вправо, те к концу файла. Надо сделать, чтобы второй цикл начал читать с начала строки, те чтобы в ch поступил первый символ строки. Вообще задача проще, но было бы интересно услышать решения именно таким способом.
И еще:
- Код: выделить все
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
int main (void)
{
FILE *stream,*stout; char ch=0,ch1;
stout = fopen("output.txt","w");
stream = fopen("sort.txt","r");
while (ch!=EOF)
{
ch=fgetc(stream);
fprintf(stout,"0");
while (ch1!='\n')
{
ch1=fgetc(stream);
fprintf(stout,"%c",ch1);
}
ch1=0;
}
void fcloseall();
return 0;
}
Почему эта программа после обработки данных из входящего потока выводит в исходящий поток бесконечное число символов 'я'? Есть предположение. что она не находит символ конца файла.
Для работы используется компилятор Dev C++ 4.9.8.1.
Заранее спасибо.