以下是正在读取的文件的格式:
类型 扩展名
应用/数学 nb ma mb
应用程序/mp21 m21 mp21
我能够读取文件中的每个条目。
现在我想创建一个键值对,其中上述条目的输出类似于
{nb: 应用程序/mathematica}
{ma:application/mathematica}
等等。
这是我当前的代码,用于简单地阅读条目
char buf[MAXBUF];
while (fgets(buf, sizeof buf, ptr) != NULL)
{
if(buf[0] == '#' || buf[0] == '\n')
continue; // skip the rest of the loop and continue
printf("%s\n", buf);
}
最佳答案
“如何在 C 中将字符串拆分为单独的单词,其中空格不恒定?”
一个简单的答案是使用 strtok() (string.h 库),但请记住该函数会影响您的初始字符串。因此,如果您想再次使用它,您应该使用一个等于初始字符串的临时变量。
char *p = strtok(char *str, const char *delim)
您应该在 delim 的位置放置:“”。
基本上,strtok 根据给定的分隔符分割字符串。
在这里,我给你举一个 strtok 的例子:
char* p = strtok(str," ");
while(p != NULL){
printf("%s\n",p);
p=strtok(NULL," ");
}
关于c - 如何在C中将a字符串拆分为单独的单词,其中空格不恒定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59242330/