0

可能重复:
如何在 C++ 中将数字转换为字符串,反之亦然
如何从 int 转换为 char*?

我得到一个整数的用户输入,我需要将它们传递给一个参数 - Output(char const* str); 这是一个类构造函数。你能告诉我我该怎么做吗?谢谢

4

1 回答 1

6

在 C++11 中:

dodgy_function(std::to_string(value).c_str());

在旧语言版本中:

std::ostringstream ss;
ss << value;
dodgy_function(ss.str().c_str());

// or
dodgy_function(boost::lexical_cast<std::string>(value).c_str());

// or in special circumstances
char buffer[i_hope_this_is_big_enough];
if (std::snprintf(buffer, sizeof buffer, "%d", value) < sizeof buffer) {
    dodgy_function(buffer);
} else {
    // The buffer was too small - deal with it
} 
于 2012-09-05T06:27:38.773 回答