C编译器(我使用GCC)如何知道如何处理以下内容?
struct node
{
int x;
struct node* next;
};
更确切地说,如果node
还没有完全定义(我们还没有达到结束大括号),那么编译器如何知道结构应该有多大?
虽然我意识到"指向"只需要一个地址,递增指针确实需要它指向的数据大小。
答案 0 :(得分:9)
struct
的大小并不重要,因为存储了指向struct
的指针,而不是struct
本身。
在增加指向struct
的指针方面;这是在struct
定义之外完成的,所以再次,并不重要。