gpt4 book ai didi

c - 逐行读取 C 文件,其中每行的长度未知

转载 作者:太空宇宙 更新时间:2023-11-04 07:09:56 24 4
gpt4 key购买 nike

我正在用 C 编写一个程序,它打开一个文件并逐行读入文件,在读入该行后对每个字符串执行各种操作。

现在我的问题是我设置了一个循环,所以我读入一行并对该行执行必要的操作,然后移至下一行直到文件末尾。我遇到的问题是我知道最大行长度是 80 个字符,但它可以小于这个,所以我在行尾停止以正确执行必要的操作时遇到了很多麻烦。

我会附上代码,但我对这部分感到困惑,而且现在还太早,我真的不知道我的代码是否有帮助,因为它还处于阅读阶段。当长度未知时,我无法弄清楚如何阅读一行。任何帮助将不胜感激!

最佳答案

定义一个大小至少为 82 的 char 缓冲区(80 个字符 + 换行符 + 空字节)。

在循环中,重复调用fgets(buffer, sizeof buffer, file) 读取一行并执行任务,直到到达文件末尾:

char buffer[82];

while (fgets(buffer, sizeof buffer, file)) {
/* handle the line in buffer */
...
}

注意:buffer 包含一个 '\n' 作为最后一个字符。

关于c - 逐行读取 C 文件,其中每行的长度未知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29189501/

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