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

相关推荐
黑客老李17 分钟前
JavaSec | SpringAOP 链学习分析
java·运维·服务器·开发语言·学习·apache·memcached
开开心心就好26 分钟前
高效Excel合并拆分软件
开发语言·javascript·c#·ocr·排序算法·excel·最小二乘法
海的诗篇_37 分钟前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法
自动驾驶小卡1 小时前
A*算法实现原理以及实现步骤(C++)
算法
Unpredictable2221 小时前
【VINS-Mono算法深度解析:边缘化策略、初始化与关键技术】
c++·笔记·算法·ubuntu·计算机视觉
编程绿豆侠1 小时前
力扣HOT100之多维动态规划:1143. 最长公共子序列
算法·leetcode·动态规划
珂朵莉MM1 小时前
2021 RoboCom 世界机器人开发者大赛-高职组(初赛)解题报告 | 珂学家
java·开发语言·人工智能·算法·职场和发展·机器人
傍晚冰川1 小时前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
fail_to_code2 小时前
递归法的递归函数何时需要返回值
算法