Возможный дубликат:
Как преобразовать число в строку и наоборот в C ++
как конфертировать из int в char *?
Я получаю пользовательский ввод целых чисел, и мне нужно передать их аргументу — Output (char const * str); Это конструктор класса. Подскажите, пожалуйста, как мне это сделать? Спасибо
В 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
}
Других решений пока нет …