介绍
本文总结C/C++中字符串类型和整型、浮点型转换的方法。包括C语言中函数sscanf
、sprintf
和C++中类stringstream
的使用。
C语言
字符串->数据
sscanf
sscanf
函数的声明为int sscanf(const char *str, const char *format, ...)
,用于从字符串格式化输入,可以实现字符串到任意进制整数或浮点数的转换。
str
: C语言字符串,表示输入的源字符串。format
: C语言字符串,规定读取源字符串的方式。常用的格式符如下所示。%c
: 读取单个字符。%s
: 读取字符串。%d
: 读取整数。%f
: 读取浮点数。%o
: 读取整数并转换成八进制。%x
: 读取整数并转换成小写十六进制。%X
: 读取整数并转换成大写十六进制。
示例
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
int day, year;
char weekday[20], month[20];
char str[100];
strcpy(str, "Saturday March 25 1989");