const char的多个int *

时间:2014-10-18 20:33:20

标签: string date char int const

我试图用多个整数作为字符串。

让我们说:

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]

最好的方法是什么?

1 个答案:

答案 0 :(得分:1)

首先,将参数转换为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;

最后,使用char const*将该字符串转换为c_str(),将字符串int转换为类似C的字符串。

char const* date = date.c_str();