在C++中,任意数值型转可以使用字符串流的方式来实现,如果编译器支持C++11标准的话,也可以用to_string()函数来实现。

1、to_string()

to_string()包含在头文件<string>中:

string to_string(int _Val)
string to_string(unsigned int _Val)
string to_string(long _Val)
string to_string(unsigned long _Val)
string to_string(_Longlong _Val)
string to_string(_ULonglong _Val)
string to_string(long double _Val)
string to_string(double _Val)
string to_string(float _Val)

可以看到几乎支持了绝大部分常见的数值类型。

2、stringstream()

这个函数标准库定义的函数,包含在头文件<sstream>中,所以使用的时候要包含这个头文件,除了它之外,标准库还定义了istringstream和ostringstream分别对应读和写string类型,stringstream则是对应读和写:

std::stringstream ss;
ss << dNum;
std::string sStr = ss.str();
std::cout << "sStr = " << sStr << std::endl;

这里sstream可以转绝大部分常见的数值类型为string。

 

当迎风的笑靥已不再芬芳

温柔的话语都已沉寂

当星星的瞳子渐冷渐暗

而千山万径都绝灭踪迹

我只是一棵孤独的树

在抗拒著秋的来临