gpt4 book ai didi

c - Linux 上的 feof() 在结束行后一行返回 true

转载 作者:太空狗 更新时间:2023-10-29 12:18:16 26 4
gpt4 key购买 nike

<分区>

我是 C 的初学者。当我使用这个 while 循环打印文件的内容时。最后一行将在 Linux 上打印两次。当到达文件末尾时,它不应该进入 while 循环。在 Windows 上没有问题。

#include <stdio.h>
#include <unistd.h>

int main()
{

char string[400];
FILE *file_para;

// Open the file
if ((file_para = fopen("Test.txt", "r")) == NULL)
{
printf("cannot open file\n");
getchar();
return 0;
}

while (!feof(file_para))
{
fgets(string, 400, file_para);
printf("**** %s", string);
}

fclose(file_para);
getchar();
return 0;
}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com