我的任务是在用户输入月份和年份时创建日历。所有这些都很有效,但我无法弄清楚如何更新char monthName[256];
变量。我的猜测是monthName = "January"
(或无论哪个月),但这不起作用。不知道我做错了什么。
FWIW,用户不输入月份名称。我必须根据用户输入的月份数将其打印到屏幕上。
答案 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