自从我实际编码直接c(甚至不是C ++但是c)以来,我已经知道如何使用extern
关键字在单独的.c文件之间共享变量,但是我可以'记得如何在文件之间共享常量数据?
例如,假设我有这个...(注意,这是不是 c代码(或者如果是,它是一个意外),而是伪代码来显示我想要的东西):
const char const * WEEKDAYS[] = {
"Sunday",
"Monday",
"Tuesday"
}
现在我正在尝试创建一个指向数据的char指针数组。同样,这是常量数据,所以我想直接在标题中定义它,但这是我无法弄清楚如何做到的地方,或者如果不是你应该怎么做它仍然你应该仍然在c文件中声明它,然后在其他地方包含的标题中使用extern。
同样,很长一段时间以来,由于更新,更现代的语言,我不得不处理这个问题,但希望你能提供帮助。
答案 0 :(得分:5)
与变量相同:
// header
extern const char * const WEEKDAYS[3];
// implementation
const char * const WEEKDAYS[3] = {
"Sunday",
"Monday",
"Tuesday"
};
此外,您可能需要const char * const
,而不是const char const *
这是无效的语法。