在字符串C ++中转换Long?

Convert a Long in a String C++?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
C++ long to string
Easiest way to convert int to string in C++

我使用Java,在这里我几乎可以使用EDCOX1,0,但是我正在尝试C++中的一些问题。

我不知道如何将long值转换成string值。


您可以使用字符串流:

1
2
3
4
5
6
7
8
9
#include <sstream>
#include <string>

long x;
// ...
std::ostringstream ss;
ss << x;

std::string result = ss.str();

也可以使用Boost的lexical_cast

1
2
#include <boost/lexical_cast.hpp>
std::string s = boost::lexical_cast<std::string>(x);

我认为人们普遍认为语言的这一方面并没有它所能做到的那么优雅。

在新的C++ 11中,事情有点简单,您可以使用EDCOX1×1函数:

1
2
#include <string>
std::string s = std::to_string(x);


可以使用stringstream。

1
2
3
std::ostringstream ss;
ss << aLongNumber;
ss.str()

你使用的是<<操作符,比如iostreamcoutcin。使用str()方法得到字符串。


1
2
3
4
5
6
7
#include <string>
#include <sstream>

std::ostringstream ss;
long i = 10;
ss << i;
std::string str = ss.str();