我正在为一个项目尝试从字符串中读取一个整数和一个字符串。唯一的问题是,sscanf()
在读取到空格时似乎会中断读取%s
。有没有办法绕过这个限制?下面是我尝试做的一个示例:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv) {
int age;
char* buffer;
buffer = malloc(200 * sizeof(char));
sscanf("19 cool kid", "%d %s", &age, buffer);
printf("%s is %d years old\n", buffer, age);
return 0;
}
它打印的是:cool is 19 years old
,而我需要的是cool kid is 19 years old
。有人知道如何修复吗?
sscanf()
的结果是确保成功扫描age
等的好第一步。 - chux - Reinstate Monica