欢迎使用CSDN-markdown编辑器
来源:互联网 发布:openwrt 修改mac wifi 编辑:程序博客网 时间:2024/06/07 03:59
动态链表的建立
建立动态链表需要使用到**结构体**。c语言允许用户建立由不同类型数据组合而成的数据结构,称之为结构体。 1: 结构体的简介和使用 *struct 结构体名 { 成员列表 }变量名列表;* 例如: ;
struct student{ int num; char name[10]; float score;}student1,student2;
这里我们就定义了一个名为student的结构体,这个结构体里面有num,name,score各种数据类型的数据,student1,student2便是student类型的结构体变量。那么我们怎么通过结构体变量使用结构体中的数据了?
2:结构体变量的引用
结构体变量的引用方式常用如下:
结构体变量名.成员名
例如:
student1.num=1;sum=student1.num+student2.num;//结构体变量的成员名可以像普通变量一样进行各种运算
此外还有结构体数组和结构体指针,与普通数组和指针答题相似,下面在介绍链表的建立的时候会稍微介绍以下结构体指针。
链表的建立
我们先来定义一个结构体:
struct student{int num;char name[];struct student * next;//这个是结构体指针的定义,形式上是不是和int * next,这种普通指针的定义类似}
接下来先给代码:
struct student * head ,*current,*prev;int i;for(i=0;i<3,i++)current=(struct student *)malloc (sizeof(struct student));input(current);if(i==0)head=current;elseprev->next=current;p=current;}p->next=NULL;
首先我们给current结构体变量指针用malloc关键字分配了地址;
input函数是用来给current中的成员赋值。如果i=0;则创建的为head头指针,然后把current赋值给p,这时i不等于0了,新创建的current的结构体变量就赋值给p,也就是上一个current变量中的next结构体成员变量指针,这样就建立一个3个单位长度的链表,最后采用free关键字来释放节点,这里就不赘述了。由于本人也是c中新人,不足之处希望指出,谢谢!
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 测量各种数据类型的长度(包括指针),typedf关键字对数据类型的作用!
- 【备注】【29】《Python基础教程(第2版》PDF 下载
- [入门-8] 错误处理之异常
- MapReduce的原理和运行流程
- Linux关机与重启命令
- 欢迎使用CSDN-markdown编辑器
- 测量各种数据类型的长度(包括指针),typedf关键字对数据类型的作用!
- Android Studio上编写运行Java代码
- Android: m, mm以及mmm编译命令以及make snod的使用
- yii2学习笔记——调用邮件模块
- Atitit 发帖机系列(6) USRQBN2201 setup spec安装程序的实现规范与标准化解决方案
- java知识点(下)
- 一段完美实现字符串倒序的算法!
- tensorflow中关于队列使用的实验