Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从C中的txt文件中读取并拆分未定义的字符串_C_File_Split_Strtok - Fatal编程技术网

从C中的txt文件中读取并拆分未定义的字符串

从C中的txt文件中读取并拆分未定义的字符串,c,file,split,strtok,C,File,Split,Strtok,txt文件显示: 你好,小伙子, 你好吗 做 (这是我为测试而写的随机文本) 这段代码只会分割“hello lad”,不会上移到下一行。 我可以使用数组,但练习是由用户读取一个随机的txt,这样我就有了未定义的行和每行的字符串。 有人能给点提示吗? 我的一个想法是数数线和弦,但我想先听听另一个意见。。。 提前感谢您只需调用fgets一次,因此您只能阅读一行文本 您需要循环调用fgets,直到什么都没有了 FILE *file; char text[R]; char *splitter; fge

txt文件显示:

你好,小伙子,
你好吗
做
(这是我为测试而写的随机文本)

这段代码只会分割“hello lad”,不会上移到下一行。 我可以使用数组,但练习是由用户读取一个随机的txt,这样我就有了未定义的行和每行的字符串。 有人能给点提示吗? 我的一个想法是数数线和弦,但我想先听听另一个意见。。。
提前感谢

您只需调用
fgets
一次,因此您只能阅读一行文本

您需要循环调用
fgets
,直到什么都没有了

FILE *file;
char text[R];
char *splitter;
fgets(text,R,file);
splitter =strtok(text," ,.-;");
while (splitter!=NULL)
{
    printf("%s\n",splitter);
    splitter=strtok(NULL," ,.-;");
}
while (fgets(text,R,file)) {
    splitter =strtok(text," ,.-;");
    while (splitter!=NULL)
    {
       printf("%s\n",splitter);
        splitter=strtok(NULL," ,.-;");
    }
}