如何更新char monthName [256];

时间:2018-02-23 22:17:27

标签: c++

我的任务是在用户输入月份和年份时创建日历。所有这些都很有效,但我无法弄清楚如何更新char monthName[256];变量。我的猜测是monthName = "January"(或无论哪个月),但这不起作用。不知道我做错了什么。

FWIW,用户不输入月份名称。我必须根据用户输入的月份数将其打印到屏幕上。

2 个答案:

答案 0 :(得分:5)

您应该使用std::string,例如std::string monthName = "Jan"; monthName = "Feb";

如果有某些原因你必须使用C风格的字符串,那么std::strcpy将解决你的问题。例如std::strcpy(monthName,"Jan");,它将字符串“Jan”复制到字符数组中。您不能将字符串直接分配给这样的数组。

答案 1 :(得分:0)

您无法通过设计更改字符串monthName的地址,它在C / C ++中是常量。您无法更改变量,但只能更改其索引(monthName[0] = 'J')。

您可以阅读有关字符串文字以及如何保存字符数组的更多信息here