我怎样才能用一些字符串填充字符数组,int int
问题描述:
我有一个关于字符数组的问题: 我有一个形式'“1”+ lapcounter +“:”+ seconds'必须出现在字符数组中。 我该如何填写这个数组?我怎样才能用一些字符串填充字符数组,int int
感谢
答
如果你的意思是你必须要格式化成字符串一些数值变量,使用一个字符串流:
std::stringstream ss;
ss << "1" << lapcounter << ":" << seconds";
现在你可以从提取的字符串:
std::string s = ss.str();
,如果你真的想出于某种原因字符数组(我敢肯定,你不这样做)
char const * cs = s.c_str();
答
使用sprintf
或snprintf
。此功能的作用类似于printf
,但不是标准输出,输出将转到您指定的字符数组。例如:
char buffer[32];
snprintf(buffer, sizeof(buffer), "1%d:%d", lapcounter, seconds);
答
to_string
这样使用:
#include <iostream>
#include <string>
int main()
{
int lapcounter = 23;
std::string str("1");
str.append(std::to_string(lapcounter));
str.append(":seconds");
std::cout << str << std::endl;
}
打印
123:seconds
如果你真的需要一个字符数组你从ss.c_str()