C语言结构体与共用体类型(2)
这几天都挺忙的,昨天没有抽出时间写学习笔记,只看没有写。今天想写时又不知道从哪开始写了,感觉和之前的接不上了!????
我发现我写的所有博客中,没有技术含量的浏览量反而很高,然后纯学习笔记的浏览量都少的可怜!!!我反思了一下,应该是我的每一个知识点都没有在一个博客中讲完,而是分了好几个博客,另一个重要的原因是应该我的博客内容没有击中重点,条理不太清晰,说实话,当我发表完博客后,再去看大佬的博客,我自己都感觉我写的太垃圾了,如果是我,我也不想看第二遍!!!
but!!!我还是会坚持写学习笔记,记录自己学习的历程,更希望自己的博客能从量变达到质变!!
不说了,开始今天的学习吧!
C语言中对链表的删除操作
从一个动态链表中删去一个结点,并不是真正从内存中把它抹掉,而是把它从链表中分离开来,只要撤销原来的链接关系即可。
从练习题入手,学习删除操作
题目是:从一个链表中删除一个指定的元素
算法流程图如下:
对链表的插入操作
链表的插入有三种情况
第一种:
在链表的中间位置插入(相对比较繁琐)
第二种:
在链表的开头插入,插入后称为链表的第一个结点
第三种:
在链表的结尾插入,插入后成为链表最后一个结点
操作流程图如下:
这两个过程没有代码的原因是,代码好长,我还得研究研究!想哭????!!
用typede定义类型
用typedef声明新的类型名来代替已有的类型名
看实例理解
这里就是用typedef为int 声明了一个新的类型名INTEGER,在下面出现所有的INTEGER表示的意义和int 表示的一样!
为一个结构起别名
声明NUM为整型数组类型
(下面实例运行结果为400)
声明STRING为字符指针类型
关于typedef的一些说明
——用typedef可以声明各种类型名,但不能用来定义变量。
——用typedef只是对已经存在的类型增加一个类型名,而没有创造新的类型。
——当不同源文件中用到同一类型数据时,常用typedef声明一些数据类型,把它们单独放在一个文件中,然后在需要用到它们的文件中用#include命令把它们包含进来。
——使用typedef有利于程序的通用性与移植,因为在不同的编译环境下,类型定义不同。
——#define是在预编译时处理的,它只能作简单的字符串替换,而typedef是在编译时处理的。实际上它不是作简单的字符串替换,而是采用如同定义变量的方法那样来声明一个类型。
注意!
自从学到指针,后面的内容真实令人头大!!!过一段时间再拿出来磨一磨吧!