如何从 int 转换为 char*?
我知道的唯一方法是:
#include <sstream>
#include <string.h>
using namespace std;
int main() {
int number=33;
stringstream strs;
strs << number;
string temp_str = strs.str();
char* char_type = (char*) temp_str.c_str();
}
但是有没有打字少的方法?
But is there any method with less typing ?
推荐答案
在 C++17 中,使用
std::to_chars
为:std::array<char, 10> str; std::to_chars(str.data(), str.data() + str.size(), 42);
在 C++11 中,使用
std::to_string
as:std::string s = std::to_string(number); char const *pchar = s.c_str(); //use char const* as target type
在 C++03 中,你所做的一切都很好,除了使用
const
as:char const* pchar = temp_str.c_str(); //dont use cast
相关文章