String 多个int到const char*

String 多个int到const char*,string,date,char,int,constants,String,Date,Char,Int,Constants,我正在尝试将多个整数转换为字符串 比如说: int year = 1995; int month = 12; int day = 18; const char* date = ("%d-%d-%d", month, day, year); 我得到: error: invalid conversion from 'int' to 'const char*' [-fpermissive] 最好的方法是什么?首先,使用std::to_string()将参数转换为字符串 string m = std

我正在尝试将多个整数转换为字符串

比如说:

int year = 1995;
int month = 12;
int day = 18;
const char* date = ("%d-%d-%d", month, day, year);
我得到:

error: invalid conversion from 'int' to 'const char*' [-fpermissive]

最好的方法是什么?

首先,使用
std::to_string()
将参数转换为字符串

string m = std::to_string(month);
string d = std::to_string(day);
string y = std::to_string(year);
然后,将它们连接起来:

string datestr = m + d + y;
最后,使用将字符串int转换为类c字符串的
c_str()
,将该字符串转换为
char const*

char const* date = date.c_str();