sscanf
函数是 C 语言标准库 <stdio.h>
中的一个函数,用于按照指定的格式从一个字符串中读取输入。它的用法类似于 scanf
函数,但是 sscanf
从字符串中读取输入,而不是从标准输入(键盘)中读取输入。
以下是 sscanf
函数的基本用法:
#include <stdio.h>int sscanf(const char *str, const char *format, ...);
-
str
:要读取的输入字符串。 -
format
:指定了输入的格式,类似于scanf
中的格式字符串。 -
...
:额外的参数,用于存储从输入字符串中读取的数据。
sscanf
函数根据指定的格式字符串 format
从输入字符串 str
中读取数据,并将读取到的数据存储到额外的参数中。下面是一个简单的示例,说明了 sscanf
函数的用法:
#include <stdio.h>int main() {char str[] = "John 25";char name[20];int age;// 使用 sscanf 从字符串中读取数据sscanf(str, "%s %d", name, &age);// 输出读取到的数据printf("Name: %s\n", name);printf("Age: %d\n", age);return 0;
}
在这个示例中,我们从字符串 “John 25” 中读取名字和年龄,并将它们存储到 name
和 age
变量中。通过使用 sscanf
函数,我们可以方便地从字符串中提取需要的数据。
需要注意的是,sscanf
函数的格式字符串与 scanf
函数的格式字符串类似,可以包含格式说明符(如 %d
、%s
等)以及转换说明符(如 %*s
、%n
等),用于指定要读取的数据类型和格式。