我想要读取最多具有10行的txt文件。该文件的格式是这样上的所有行:使用fscanf从给定行读取
1 1 8
2 2 3
3 1 15
4 2 7
我想写将只传递给它一个int提供的线上阅读功能。我想使用for循环遍历行而不扫描任何内容,但我无法弄清楚如何实现它。
到目前为止,我的函数看起来像这样,for循环尚未正确实现。
void process(int lineNum, char *fullName)
{
int ii, num1, num2, num3;
FILE* f;
f = fopen(fullName, "r");
if(f==NULL)
{
printf("Error: could not open %S", fullName);
}
else
{
for (ii=0 (ii = 0; ii < (lineNum-1); ii++)
{
/*move through lines without scanning*/
fscanf(f, "%d %d %d", &num1, &num2, &num3);
}
printf("Numbers are: %d %d %d \n",num1, num2, num3);
}
}
您需要每次检查'fscanf()'的结果。 –
谢谢,这个窍门 – Dawson
@JonathanLeffler'你需要检查每次fscanf()的结果 - 你能澄清你的意思吗?我没有得到你。 –