C ++使用多个字符串和浮点数填充Char数组

时间:2014-04-29 13:56:17

标签: c++

char msg[40]; 
string s = "The price is $"; 
float price = 120.00; 
string input = " and the tax is $";  
float tax = 5.00;

例如,我想用&#34填充msg;价格是120.00美元,税收是$ 5.00"。到目前为止我无法使用的代码是:

msg = s + price + input + tax; 

我现在被困住了,无法弄明白,任何帮助都表示赞赏。感谢。

2 个答案:

答案 0 :(得分:3)

您应将msg声明为std::string

然后你可以使用stringstream将float转换为字符串或使用C ++ 11,你可以使用函数std::to_string(arg)arg支持的各种类型。

答案 1 :(得分:1)

您可以使用c函数sprintf(除非您想使用c ++字符串,在这种情况下stringstream是一个简单的选项。

这可以通过

完成
sprintf(msg, "The price is $%.2f and the tax is $%.2f", price, tax); 

printf语法here有一个很好的描述。