嵌入式开发学习日志(数据结构--双链表)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 (删除中间产生的文件)。

相关推荐
handler012 小时前
从源码到二进制:深度拆解 Linux 下 C 程序的编译与链接全流程
linux·c语言·开发语言·c++·笔记·学习
电子云与长程纠缠2 小时前
UE5 两种方式解决Decal Actor贴花拉伸问题
学习·ue5·游戏引擎
red_redemption2 小时前
自由学习记录(172)
学习·cache line 64b·重用距离
不爱吃炸鸡柳3 小时前
数据结构精讲:树 → 二叉树 → 堆 从入门到实战
开发语言·数据结构
阿荻在肝了3 小时前
Agent学习六:LangGraph学习-持久化与记忆一
python·学习·agent
Aurorar0rua3 小时前
CS50 x 2024 Notes C - 05
java·c语言·数据结构
棋子入局4 小时前
C语言制作消消乐游戏(2)
c语言·开发语言·游戏
6Hzlia4 小时前
【Hot 100 刷题计划】 LeetCode 739. 每日温度 | C++ 逆序单调栈
c++·算法·leetcode
良木生香4 小时前
【C++初阶】:STL——String从入门到应用完全指南(1)
c语言·开发语言·数据结构·c++·算法