自从我真正直接编写 c(甚至不是 C++,而是 c)并且我知道如何使用 extern
关键字在单独的 .c 文件之间共享一个变量以来,已经有很长一段时间了,但是什么我不记得是如何在文件之间共享常量数据?
例如,假设我有这个...(请注意,这不是 C 代码(或者如果是,那是个意外)而是伪代码来显示我想要的内容):
const char const * WEEKDAYS[] = {
"Sunday",
"Monday",
"Tuesday"
}
现在我正在尝试创建一个指向数据的 char 指针数组。同样,这是常量数据,所以我想直接在标题中定义它,但那是我不知道该怎么做的地方,或者如果那不是你应该做的,你仍然应该在 c 文件中声明它,然后在包含在其他地方的 header 中使用 extern。
同样,由于更新、更现代的语言,我已经很长时间没有处理这个问题了,但希望你能提供帮助。
最佳答案
它与变量相同:
// header
extern const char * const WEEKDAYS[3];
// implementation
const char * const WEEKDAYS[3] = {
"Sunday",
"Monday",
"Tuesday"
};
此外,您可能需要 const char * const
,而不是 const char const *
,后者是无效语法。
关于c - 如何在文件之间共享常量字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9155652/