0

这是一个非常幼稚的问题,我搜索了很多,但由于我的懒惰找不到答案。

我的源代码函数都在一个名为 lib.c 的文件中,并且我创建了一个头文件 lib.h,我在 main.c 中调用它。当我在 lib.c 中有一个 struct{} 时会出现问题,因为函数需要在本地使用全局 struct 对象。

由于这种复杂性,我还必须在 lib.c 源文件中包含 lib.h,因为 struct{} 是在 lib.h 中声明的。

如果我从头文件中取出 struct{} 并将其放在 lib.c 文件中,则 main.c 无法读取该结构,因为它未包含在 lib.h 中。

lib.h

struct Structure {} structure;
void func1();
void func2();


lib.c

#include <stdio.h>
#...
void func1() {};
void func2() {};


main.c

#include <stdio.h>
#...
#include "lib.h"
int main() {};
4

0 回答 0