链表:
【链表(自引用结构)】链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,操作。
例:
#include
typedef struct student
{
int num;
int score;
struct student *next;
};
int main()
{
student a,b,c,*p,*head;
printf("size of p is %d\n",sizeof(p));
printf("size of a is %d\n",sizeof(a));
head=&a;
a.num=101;
a.score=100;
b.num=102;
b.score=102;
c.num=103;
c.score=105;
p=head;
a.next=&b;
b.next=&c;
c.next=NULL;
printf("address:a %p,b %p,c %p\n",a,b,c);
while(p!=NULL)
{
printf("%p (%d %d %p)\n",p,p->num,p->score,p->next);
p=p->next;
}
return 0;
}
答案:
文章图片
推荐阅读
- C语言|C语言进阶学习数据在内存中的存储
- C语言进阶|C语言进阶——数据在内存中的存储
- C语言|VC++6.0安装包(免费安装包)(中文)
- [C语言] 最小公倍数
- 刨析《C语言》进阶付费知识完结
- C语言与C++编程|看完这篇你还能不懂C语言/C++内存管理()
- c语言4
- c语言|C语言知识大杂烩(上)(1-10)
- c语言|动态+静态+文件操作 C语言实现通讯录