在visual studio代码中成功编译
extern "C" char Table[256][256];
如果我将上面的代码替换为
extern char Table[256][256];
Visual Studio 开始给我 Unresolved 表外部错误?
最佳答案
这是关键字 extern
的两个不相关的含义。
第一个是 language linkage specifier ,它使变量可以与 C 互操作。
第二个是 storage class specifier ,它声明变量在别处定义(它不是,因此“ undefined reference ”错误)。
您实际上可以同时使用两者来声明一个在别处定义的带有 C 链接的变量:
extern "C" extern char Table[256][256];
关于c++ - extern "C"char Table[256][256]之间的区别;和外部字符表[256][256];,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48924624/