20170827_int 转换成 string 的两种方法
to_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)
不仅 int 可以转换成 string,这些都可以哦~
2、第二种是借助字符串流:
标准库定义了三种类型字符串流:istringstream, ostringstream, stringstream
要使用它们需要包含sstream头文件。
除了从 iostream 继承来的操作:
1、sstream 类型定义了一个有 string 形参的构造函数:
即: stringstream stream(s); 创建了存储 s 副本的 stringstream 对象 , s 为 string 类型对象。
2、定义了名为 str 的成员,用来读取或设置 stringstream 对象所操纵的 string 值:
stream.str(); 返回 stream 中存储的 string 类型对象。
stream.str( s ); 将 string 类型的 s 复制给 stream,返回 void。
于是……
1、第一种是 to_string 函数,这是C++11新增的,使用非常方便,简单查了下:c++11 标准增加了全局函数 std::to_string,
以及 std::stoi / stol / stoll 等等函数(这几个就是string转int,long,以及long long啦~)
to_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)
不仅 int 可以转换成 string,这些都可以哦~
2、第二种是借助字符串流:
标准库定义了三种类型字符串流:istringstream, ostringstream, stringstream
看名字就知道这几种类型和 iostream 中的几个非常类似,
分别可以读、写以及读和写string类型,它们也确实是从 iostream 类型派生而来的。
要使用它们需要包含sstream头文件。
除了从 iostream 继承来的操作:
1、sstream 类型定义了一个有 string 形参的构造函数:
即: stringstream stream(s); 创建了存储 s 副本的 stringstream 对象 , s 为 string 类型对象。
2、定义了名为 str 的成员,用来读取或设置 stringstream 对象所操纵的 string 值:
stream.str(); 返回 stream 中存储的 string 类型对象。
stream.str( s ); 将 string 类型的 s 复制给 stream,返回 void。
于是……
string Int_to_String( int n )
{
ostringstream stream;
stream<<n; //n为int类型
return stream.str();
}