Вывести на экран строки с определенным количеством символов из файла си
есть код который должен выводить строки из файла которые по количеству символов выполняют условие n,но он считывает только первую строку в бесконечный цикл при любом значении n В чем проблема?
int main(void)
{
char mem[N];
FILE * fil;
int temp, k, length = 60;
int n;
printf("Enter to n\n");
scanf("%d",&n);
fil = fopen("length.txt", "rt"); assert(fil);
//printf("test1");
long cur = 0;
while(fgets(mem,N,fil) !=NULL)
{
long next = fseek(fil, 0, cur);
if ((next - cur) == n)
fputs(mem,fil);
//printf("test1\n");
printf("%s",mem);
cur = next;
}
fputc('\n',fil);
fclose(fil);
system("pause");
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Непонятно, что вы вообще такое делаете...
while(fgets(mem,N,fil))
{
if (strlen(mem) == n) printf("%s",mem);
}
По-моему, этого вполне достаточно, нет?