我正在读取格式文件
1 32 43 23
32 43
123 43 54 243
123 2222
2
这是我的代码片段。
string[100];
while(!feof(fp))
fgets(string,100,fp)
现在,当我放置每个字符串时,在最后一个字符串中我得到了重复和更多的歧义(就像其他东西也被打印出来,比如 123 左右)。
如何解决这个问题?
最佳答案
你需要检查fgets的返回值.如果读取成功,fgets
返回指向您传递给它的缓冲区的指针(即示例中的 string
)。如果遇到文件结尾且未读取任何字符,fgets
返回 NULL
。
试试这个:
char string[100];
while(fgets(string, 100, fp)) {
printf("%s\n", string);
}
关于c - 使用 fgets 从文件中读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9434207/