在 C++中转换int为等价物的最简单方法是什么。string我知道两种方法。有没有更简单的方法?
int
string
(1)
int a = 10; char *intStr = itoa(a); string str = string(intStr);
(2)
int a = 10; stringstream ss; ss << a; string str = ss.str();
C++11 引入std::stoi(以及每种数字类型的变体)和std::to_string,C 的对应物,atoi但itoa用std::string.
std::stoi
std::to_string
atoi
itoa
std::string
#include <string> std::string s = std::to_string(42);
因此是我能想到的最短的方法。你甚至可以省略命名类型,使用auto关键字:
auto
auto s = std::to_string(42);
注意:参见[string.conversions](n3242中的21.5)