我有一个
形式的输入字符串char *s = "one.two three"
我希望将它分成3个字符串变量。 我在做
sscanf(s, "%s.%s %s", one, two, three);
但它在“one.two”中读取变量1的字符串。我该如何处理“。”和sscanf的空白?
答案 0 :(得分:3)
%s
说明符仅对空格停止。尝试类似:
sscanf(s, "%[^.].%s %s", one, two, three);
有趣的是,可能无法为"%s.%s %s"
生成可接受的输入,因为%s
仅针对空格停止,.
必须立即跟随它。