2012-09-05 35 views
0

可能重复:
How to convert a number to string and vice versa in C++
how to convert from int to char*?如何将一个整数值传递给(const char * str)函数参数?

我得到整数的用户输入,我需要将它们传递给一个说法 - 输出(字符常量* STR);这是一个Class构造函数。你能告诉我我该怎么做?谢谢

+0

整型转换为字符串,使用'lexical_cast'。 –

+2

如果你正在接受用户输入,为什么不把它当作一个字符串呢?不需要转换。 –

回答

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 
} 
相关问题