链表的相关知识

线性表是一类很常用的数据结构,分为顺序表和链表。其中顺序表可以简单的理解为数组。
链表是由若干个结点组成(每个结点代表一个元素),且结点在内存中的存储位置通常是不连续的。

1)链表的结点一般有两部分构成,数据域和指针域

struct node{
    typename data;//数据域
    node* next;//指针域
};

2)使用malloc函数为链表接待你分配内存空间(C语言)

malloc函数是C语言中stdlib.h头文件下用于申请动态内存的函数

typename* p=(typename*)malloc(sizeof(typename));


//申请一个int型变量和一个node型结构体变量为例 
int* p=(int*)malloc(sizeof(int));
node* p=(node*)malloc(sizeof(node));

3)使用new运算符为链表结点分配内存空间
new是C++中用来申请动态内存空间的运算符

typename* p=new typename;


//申请一个int型变量和一个node型结构体变量为例 
int* p=new int;
node* p=new node;

4)内存泄漏(就是要 开辟空间后记得释放,来防止内存泄漏)

free函数

//free函数是对应于malloc函数,同样是在stdlib.h头文件下。
free(p)//释放指针变量p所指向的内存空间,并且将指针变量p指向空地址NULL

delete运算符

//delete运算符是对应于new运算符的,其使用方法和效果均与free相同
delete(q);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

工程人永远在路上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值