C++标准库中string类型与数值类型之间的转换
2017-11-11 22:44
387 查看
C++标准库中string类型与数值类型之间的转换
1、数值类型转换为string类型
std命令空间下有一个C++标准库函数std::to_string(),可用于将数值类型转换为string。使用时需要include头文件<string>。函数原型申明如下:string to_string (int val);
string to_string (long val);
string to_string (long long val);
string to_string (unsigned val);
string to_string (unsigned long val);
string to_string (unsigned long long val);
string to_string (float val);
string to_string (double val);
string to_string (long double val);
2、string类型转换为数值类型
C++库函数将string转换为数值类型,相应的库函数申明于头文件<string>中。(C++11中)
函数原型申明如下:
int stoi (const string& str, size_t* idx = 0, int base = 10);
long stol (const string& str, size_t* idx = 0, int base = 10);
unsigned long stoul (const string& str, size_t* idx = 0, int base = 10);
long long stoll (const string& str, size_t* idx = 0, int base = 10);
unsigned long long stoull (const string& str, size_t* idx = 0, int base = 10);
float stof (const string& str, size_t* idx = 0);
double stod (const string& str, size_t* idx = 0);
long double stold (const string& str, size_t* idx = 0);
形参说明:
str:表示被转换的字符串。
idx:表示一个size_t*的指针类型,默认为空值。不为空时,转换成功时获取第一个非数值字符的下标。一般情况下,因为它是直接char型指针把最后非数值字符的地址值和起始地址值相减,所以也表示成功转换的字符数量,如”10”转成功为数值10时,*idx的值为2。
base:表示转换基准,默认是10进制。
相关文章推荐
- C++之string类型的使用和与数值类型之间的转换
- char *、CString和string之间的类型转换 .
- C++数值类型与string的相互转换
- Android:Date、String、Long三种日期类型之间的相互转换
- String 与 int之间的类型转换
- C#数据类型转换——数值字符串和数值之间的转换
- MySQL中Int类型、short和byte之间强制转换、String的replaceALL
- Go语言string,int,int64 ,float之间类型转换方法
- C++数值类型与string的相互转换
- 托管C++的String^类型与非托管C++的char*类型之间的转换
- char *、CString和string之间的类型转换与比较
- Java中Long、String、Date 类型之间的转换
- 在C#中int,string等各种类型之间的相互转换--现在写点技术文档
- java Data、String、Long三种日期类型之间的相互转换
- java Data、String、Long三种日期类型之间的相互转换
- java数值类型与二进制byte数组之间的转换
- 如何:在十六进制字符串与数值类型之间转换(C# 编程指南)
- 用标准C++进行string与各种内置类型数据之间的转换
- 用标准C++进行string与各种内置类型数据之间的转换
- Go语言string,int,int64 ,float之间类型转换方法