在这里引用内核代码时,struct page;
定义为没有成员(我猜这不是前向声明)。
但是这篇文章中接受的答案说这是不允许的。
然后我尝试了一个样本,
#include <stdio.h>
struct page;
struct arm_vmregion
{
unsigned long vm_start;
unsigned long vm_end;
struct page *vm_pages;
int vm_active;
const void *caller;
};
int main()
{
struct arm_vmregion aa;
return 0;
}
它编译成功
empty_struct.c: In function ‘main’:
empty_struct.c:15:22: warning: unused variable ‘aa’ [-Wunused-variable]
请在这方面澄清我。