c - 字符串 "abc 123 456"的 sscanf 格式是什么

标签 c scanf

我想将字符串“abc 123 456”拆分为字符串 (“abc”) 和 2 个数字 (123,456)。我应该在下面的代码中输入什么格式?

char *s;
int a,b;
sscanf("acb 123 456", format, s, &a, &b);

最佳答案

你想要:

"%s%d%d"

但是你还需要为你提取的字符串分配缓冲空间:

char s[100];
int a,b;
sscanf("acb 123 456", "%s%d%d", s, &a, &b);

关于c - 字符串 "abc 123 456"的 sscanf 格式是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15697031/

相关文章:

c - 为什么基于 _WIN32 或 __linux__ 有条件地包含 direct.h 或 sys/stat.h?

c - 即使进程正常运行,如何创建核心转储?

c - 预处理后的内核模块源文件

c - C 中的指针数组和段错误(核心转储)

c - 带有 scanf - C 变量输入的循环条件

c - fscanf 不读入数组

c - 在 C 中拆分字符串

c++ - 从森林中构建一棵 n 叉树

c - ? : ternary conditional operator behaviour when leaving one expression empty

c - 我的 C 应用程序中出现段错误