可能重复:
为什么 const 在 C++ 中暗示内部链接,而在 C 中却没有?
什么是 C++ 中的外部链接和内部链接
我有两个 C 文件,我正在尝试编译为可执行文件。一个文件只包含一个如下声明(简化)。
const char *foo[2] = {"thing1", "thing2"};
第二个 c 文件执行此操作
extern const char *foo[2];
main()
{
//Code that does stuff with foo
}
编译时出现链接器错误,提示 foo 是未解析的外部符号。我假设编译器正在优化 foo。这里有什么想法吗?