如果我欺骗了主题,我真的很抱歉,我在这里搜索它没有结果。我有代码
void split(char* str, char* splitstr)
{
char* p;
char splitbuf[32];
int i=0;
p = strtok(str,",");
while(p!= NULL)
{
printf("%s", p);
sprintf(&splitstr[i],"%s",p);
i++;
p = strtok (NULL, ",");
}
}
如何使用正确的 sprintf 将 strtok 拆分的单词放入字符串数组?我能以某种方式避免由 strtok 创建的断线吗?我正在用 ANSI C 编程。我以相同的方式声明了数组 splitstr 和 str 。
char* splitstr;//in main char splitstr[32];
感谢帮助。
编辑:
我想做这样的事情: INPUT (它是一个字符串) > "aa,bbb,ccc,ddd" 我声明:char tab[33]; 输出(如果可能,将所有项目保存到字符串数组)> 选项卡 [0] 是“aa” 选项卡 [1] 是“bbb” ... tab[3] 是 "ddd" 但不是 "ddd(newline)"
编辑2 [18:16]
我忘了添加数据字符串来自文件的读取行。这就是我写“ddd(newline)”的原因。之后我发现新行也由 strtok 显示,但作为另一个项目。顺便说一句,所有答案都很好地考虑了这个问题。几秒钟前我的笔记本电脑坏了(我不知道为什么屏幕变黑了) 一旦我控制了我的电脑,我就会检查代码。:-)