我基本上是使用C函数fscanf()从文件中读取数据。使用fopen并检查它,我通过检查返回值知道文件已成功打开。
文件是用Char、int和Int.格式化的,我的问题是我只能一次读取一行,循环退出。如果有人知道我错在哪里会很感激
char c;
char nl;
int t1, t2;
int dataTest;
do
{
dataTest = fscanf(fp, "%c %d %d", &c, &t1, &t2);
fscanf(fp, "%c", &nl);
printf("%c %d %d \n", c, t1, t2);
if (dataTest = -1)
{
break;
}
}while(1);
最佳答案
你想要的if(datatest==-1)
而不是if(datatest = -1)
一个测试相等,而另一个是赋值表达式。C
中的任何“赋值表达式”都将返回变量的赋值。例如,datatest= -1
将返回-1
。