gpt4 book ai didi

c - 一些比 feof() 更好的循环退出器

转载 作者:太空宇宙 更新时间:2023-11-04 02:51:46 25 4
gpt4 key购买 nike

我这里真的有问题。从文件中读取字符时,我似乎并没有真正找到退出循环的最佳方法。我知道每个教程都建议我不应该使用 while( !feof() ) 但他们除了在 while 中放置 fgets() 之外并没有真正建议任何其他东西,这并不合适,因为我想阅读整个 FILE 内容我的变量。

while (!feof(newFile))
{
newString[i++] = fgetc(newFile);
}
newString[i] = '\0';
i = 0;

//this is the resoult seen with the debugger
newFile content = ABC
newString[0] = 65 (A)
newString[1] = 66 (B)
newString[2] = 67 (C)
newString[3] = 10 (\n)
newString[4] = -1
newString[5] = 0 (\0)

我正在寻找一个解决方案和一些关于如何改进我的算法的建议。

最佳答案

int c;

while ((c = fgetc(newFile)) != EOF) newString[i++] = c;
newString[i] = '\0';

关于c - 一些比 feof() 更好的循环退出器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21349200/

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