Как передать целочисленное значение в аргумент функции (const char * str)?

Возможный дубликат:
Как преобразовать число в строку и наоборот в C ++
как конфертировать из int в char *?

Я получаю пользовательский ввод целых чисел, и мне нужно передать их аргументу — Output (char const * str); Это конструктор класса. Подскажите, пожалуйста, как мне это сделать? Спасибо

0

Решение

В 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
}
6

Другие решения

Других решений пока нет …