2016年11月

某天突然想了个关于结构体的问题,由于很久没有接触 C 语言,一开始并不知道其实这个问题本身就存在语法错误的问题,但正是因为对 C 知识的遗忘,才有了这次探索与巩固。

0x00 最初的问题

假设有如下结构体:

struct foo
{
    /* some other variables...*/
    struct foo bar;
};

那么我在定义一个 foo 变量的时候,

int main()
{
    struct foo hello;
    return 0;
}

会不会因为结构体里有一个循环引用而造成“内存爆炸”呢?

- 阅读剩余部分 -