gpt4 book ai didi

c - sscanf 字符串拆分不起作用

转载 作者:行者123 更新时间:2023-12-02 06:06:36 27 4
gpt4 key购买 nike

谁能解释一下为什么在下面的代码中没有拆分字符串

#include <stdio.h>

int main(void)
{
char name[] = "first:last";
char first[20], last[20];

sscanf(name, "%s:%s", first, last);

printf("first: %s, last: %s", first, last);

return 0;
}

输出是

first: first:last, last:

但应该是

first: first, last: last

请在此处检查代码 http://ideone.com/JDSTt

最佳答案

你可以这样使用:

sscanf(name, "%[^:]:%s", first, last);

: 不是空格,因此常规 %s 不会将其视为分隔符。参见 scanf了解更多详情。

(编辑演示:http://ideone.com/m4LVP)

关于c - sscanf 字符串拆分不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8642500/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com