自引用结构兼谈Malloc和Free函数
一、自引用结构
1、 什么事自引用结构?
自引用结构(Self-Referential Structure)是一种特殊的结构。主要特征:一个或多个自身的变量是指向自身的指针。
2. 判断几个自引用结构是否合法?
struct SELF_REF1{
int A;
struct SELF_REF1 B;
int C;
};
这个结构是非法的,为什么呢?结构里面有包含B,B里面有包含自己的成员B,这样就会无休止的循环下去。
struct SELF_REF1{
int A;
struct SELF_REF1 *B;
int C;
};
编译器在结构的长度确定之前,就已经知道指针的长度,所以这样自引用是合法的。
原文地址:http://www.cnblogs.com/P_awl/archive/2010/04/08/1707852.html