我想逐行读取一个txt文件。我收到错误消息“设备尚未准备好”。我不明白问题出在哪里?代码如下:
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char **argv)
{
char command[100];
char line[10];
FILE* fp = fopen("input.txt","r");
while (fgets(line, sizeof line, fp) != NULL)
{
puts(line);
}
getchar();
return 0;
}
谁能告诉我我做错了什么?提前致谢。 操作系统:windows 7; 编译器:dev c++
最佳答案
- 抛弃 Dev-Cpp。它已经过时了,并且有更好的替代品,它们都像啤酒一样免费(netbeans、code::blocks、MS Visual C++ Express、eclipse)
- 检查你的错误。如果出现任何问题,请确保您的程序尽早大声失败。
- 阅读您调用的每个库函数的文档,确保您正确使用它们,并确保您使用正确的方法检测和处理错误
- 验证您尝试读取的文件确实存在并且可以读取(最重要的是,
assert()
fp
不是NULL
) - “代码”是廉价 spy 电影中的特工交换以获得重要信息的 secret 。您在文本编辑器或 IDE 中输入的内容称为“代码”,它不可数,因此您不使用复数形式。
关于c - 逐行读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3543152/