结构体指针问题

来源:百度知道 编辑:UC知道 时间:2024/09/21 19:36:35
struct AAA
{
....;
struct AAA *p;
}sut;

"struct AAA *p;"此句放在结构体里面,和放在结构体外面有什么区别?

放在结构体里就是结构体的一部分:比如链表里需要有struct AAA *next;来指向下一个结构体的地址

放在外面,就是说创建一个变量:值是AAA类型的地址

这是链表的标准形式;
struct AAA *p;定义的是一个指向AAA结构的一个指针,通常用于链表指向下一个节点

放在外头 结构成员就没有他 是指向struct AAA类型的一个指针变量,即一个地址
放在里头 可形成链表,是下一个struct AAA类型的地址