嵌入式开发学习日志(数据结构--双链表)Day21

一、双链表

1.定义

双向链表是在单链表的每个结点中,再设置一个指向其钱去节点的指针域。

2、声明文件

3、创建表头

4、头插

5、 遍历

6、尾插、

7、指定插

8、查找

9、修改

10.、删除

11、逆序

12、销毁链表

13、main.c

三、扩展:工程管理工具(makefile)

1、当三个以上的.c编译时:

(1)vi Makefile(makefile也可,推荐用首字母大写),进入下面的页面进行编写(也可在资源管理器中打开:

出现羊头标志即可)

版本一:

复制代码
a.out(目标):main.c ./doulink (依赖)
    gcc main.c doulink.c//前面空一个Tab键
clean:
    rm a.out

1、 a.out: main.c ./doulink.c // 规则1 ,生成可执行文件,其中./a.out为目标,冒号后的为依赖(输入结束回车)

2、 gcc main.c doulink.c //前面必须为Tab键空格

3、clean: //可删除目标文件

4、 rm a.out

版本二:(推荐使用)

复制代码
#代表源文件
SRC += main.c(变量名任取)//指定变量
SRC += doulink.c
DST = app(可执行文件)
 
CC = gcc//编译器
FLAG = -g
LIB = -lm
 
$(DST):$(SRC)
    $(CC) $(SRC) $(FLAG) $(LIB)-o(指定名字) $(DST)
clean:
    rm $(DST)

版本二示例:

(2)make (编译命令,默认只走第一条规则)

(3)./app (运行,版本一运行命令为 ./a.out)

2、扩展命令:make clean (删除中间产生的文件)。

相关推荐
小安同学iter7 小时前
SQL50+Hot100系列(11.9)
算法·leetcode·职场和发展
炼金士7 小时前
基于多智能体技术的码头车辆最快行驶路径方案重构
算法·路径规划·集装箱码头
qzhqbb7 小时前
神经网络—— 学习与感知器(细节补充)
神经网络·学习
风暴之零8 小时前
卡尔曼滤波学习
人工智能·学习·机器学习
小刘max9 小时前
最长递增子序列(LIS)详解:从 dp[i] 到 O(n²) 动态规划
算法·动态规划
王璐WL9 小时前
【数据结构】双向链表
数据结构
谢景行^顾9 小时前
数据结构知识掌握
linux·数据结构·算法
2401_860319529 小时前
【无标题】
开发语言·学习·rust
ShineWinsu10 小时前
对于数据结构:堆的超详细保姆级解析——下(堆排序以及TOP-K问题)
c语言·数据结构·c++·算法·面试·二叉树·
DuHz10 小时前
基于时频域霍夫变换的汽车雷达互干扰抑制——论文阅读
论文阅读·算法·汽车·毫米波雷达