从文件中读取并在c中使用strtok()
你能帮我吗?我试着读一个字符串123;342;543;36.6;平静在一个.txt文件中。然后使用函数atoi比较我的值。但首先我想用strtok。我不明白这有什么不对,因为我只使用printf%s,str;但是我不能正确使用strtok,这就是为什么我没有得到结果 代码: 应该在读取数据后调用 应在读取数据后调用您的第一次strtok调用位于错误的位置。它必须在字符串str收到有效内容之后,即在fgets之后 使用sscanf将更容易、更干净、更安全。您的第一次strtok呼叫位于错误的位置。它必须在字符串str收到有效内容之后,即在fgets之后 这将更容易、更干净、更安全地使用sscanf。诚实的抄送:您需要更详细一点;你的语法也需要练习。诚实的抄送:你需要更详细一点;你的语法也需要练习。从文件中读取并在c中使用strtok(),c,strtok,C,Strtok,你能帮我吗?我试着读一个字符串123;342;543;36.6;平静在一个.txt文件中。然后使用函数atoi比较我的值。但首先我想用strtok。我不明白这有什么不对,因为我只使用printf%s,str;但是我不能正确使用strtok,这就是为什么我没有得到结果 代码: 应该在读取数据后调用 应在读取数据后调用您的第一次strtok调用位于错误的位置。它必须在字符串str收到有效内容之后,即在fgets之后 使用sscanf将更容易、更干净、更安全。您的第一次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);
}
istr=strtok(str,sp);