你能帮助我吗?我试图读取.txt文件中的字符串123;342;543;36.6;calm
。然后使用函数atoi()
比较我的值但首先我想使用strtok()我不明白这有什么问题,因为我只工作printf("%s",str);
但我不能正确使用strtok()
这就是为什么我没有得到我的结果。
代码:
void printInfo()
{
int i;
FILE *out;
char str[250];
char sp[10]=";";
char *istr;
istr=strtok(str,sp);
if ((out =fopen("test.txt","r"))==NULL)
printf("Error open, file\n");
else
{
fgets(str,250,out);
printf("%s",str);
while (istr != NULL)
{
printf("%s",istr);
istr=strtok(NULL,sp);
}
}
fclose(out);
}
最佳答案
你的第一个电话打错地方了它必须在字符串strtok()
收到有效内容之后,即str
之后。
使用fgets()
会更容易、更干净、更安全。
关于c - 从文件中读取并在c中使用strtok(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42163845/