编写一个日志系统,我只想在模块中存储和修改一个数组(我们称之为 foo.c,带有适当命名的头文件 foo.h),同时能够访问 main 中的内容。 C。在 foo.c 中我有:
unsigned char log[4096] = {0};
而main.c如下:
#include "foo.h"
int main(){
extern unsigned char log[4096];
// code
return 0
}
这会产生错误:
error: 'log' redeclared as different kind of symbol
我这样做对吗?我尝试将外部日志声明为“log[]”和“log”,但这些也无济于事。对这个问题的一点启发将会有所帮助。谢谢!
最佳答案
问题是the log
function来自<math.h>
。最简单的解决方案是重命名数组。
关于c - 在 C 的另一个模块中声明 extern 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38752602/