- 博客(13)
- 收藏
- 关注
原创 从零开始的嵌入式系统开发学习Day11(数据结构)
目录一、队列1.1 队列的概念1.2 链式队列1.2.1定义结点结构体和队列结构体1.2.2 创建一个空的队列1.2.3 入队1.2.4 出队1.3 顺序队列(循环队列)1.3.1 定义结点结构体1.3.2 创建一个空的循环队列1.3.3 判断队列是否为满1.3.4 入队1.3.5 判断队列是否为空1.3.6 出队1.3.7 遍历队列二、树和二叉树2.1 概念2.2 二叉树2.2.1 二叉树的性质2.2.2 二叉树的存储.
2022-02-17 08:00:00
617
原创 从零开始的嵌入式系统开发学习Day10(数据结构)
一、双向循环链表1.1 概念1.2 操作1.2.1定义结构体#ifndef _DOUBLELIST_H_#define _DOUBLELIST_H_#include <stdio.h>#include <stdlib.h>typedef int DataType;typedef struct doublelist{ DataType data; struct doublelist *next; struct double..
2022-02-16 08:00:00
760
原创 四则运算器(数据结构)
一、定义头文件#ifndef _CALCULATE_H_#define _CALCULATE_H_#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>//定义栈typedef int DataType;typedef struct node{ DataType data; struct node *next;}Node;..
2022-02-16 08:00:00
701
原创 从零开始的嵌入式系统开发学习Day9(数据结构)
一、单链表1.1 概念 单链表:线性表的链式存储 线性表:一对一的关系 链式存储:不需要在内存中开辟一段连续的内存空间,所以每一个数据不再是一个基本数据,而是由两部分组成,数据域和指针域,数据域保存数据,指针域保存下一个结点的地址。 单链表:就是单向链表,前者结点可以找到后者结点,但是后者无法找到前者。1.2 单链表的操作1.2.1 定义结点结构体#ifndef _LINKLI...
2022-02-15 09:48:47
1218
原创 从零开始的嵌入式系统开发学习Day8(数据结构)
一、课程体系概念顺序表,单链表,单向循环表,双向循环表,队列,栈树图算法:查找算法,排序算法二、为什么要学习数据结构1.程序 = 数据结构 +算法数据结构体是写代码非常重要的东西,也是一门基础课程2.任何一门编程语言,数据结构都是非常重要的组成部分比如c++里面的STL(标准...
2022-02-12 21:00:00
413
原创 简单的通讯录管理系统(linux C)
目录一、用户需求二、功能实现2.1 添加用户2.2 查看用户2.2.1 按照姓名排序2.2.2 输出所有用户信息2.3 搜索用户(通过id或者用户名)2.4 删除用户2.5 修改用户信息三、头文件定义四、主函数五、函数代码六、Makefile一、用户需求1.通过makefile管理代码2.各个子功能:a:添加用户b:查看用户(按照姓名排序)c:搜索用户(两种方式:id,用户名)...
2022-02-11 20:40:13
1856
1
原创 从零开始的嵌入式系统开发学习Day7(linux C)
目录一、分文件main.cfunc.cfunc.h二、Makefile2.1什么是Makefile?2.2什么是make?2.3为什么使用?2.4.优越性2.5 makfile编译规则2.6 Makefile特性介绍2.6.1 变量2.6.2 自动推导2.7 文件查找(1)VPATH = 目录 :目录 ...(2)vpath。2.8 Makefile中的通配符2.9 Makefile命令中的特殊字符2.10 条件判断三、gd
2022-02-11 20:23:54
178
原创 从零开始的嵌入式系统开发学习Day6(linux C)
一、函数指针函数指针:本质是一个指针,指向一个函数。我们定义的函数名其实就是一个指针,保存当前代码区的首地址函数指针学习的目的就是想解决不能定义一个指针可以像函数名一样对当前函数进行调用函数指针定义格式:返回值类型(*变量名)(参数);函数指针的作用:将一个函数作为参数传递给另一个函数需要定义成函数指针,也称为回调函数#include <stdio.h>typedef unsigned ...
2022-01-25 21:30:12
347
原创 从零开始的嵌入式系统开发学习Day5(linux C)
一、指针和二维数组#include <stdio.h>int main(){ int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12}; //&a:二维数组名取地址表示地址的升级,将行指针变化为指向整个数组的指针 printf("&a = %p\n",&a); printf("&a+1 = %p\n",&a+1); printf("a = %p\n",a); pr..
2022-01-23 20:03:31
151
原创 从零开始的嵌入式系统开发学习Day4(linux C)
目录一、一维数组1.1(接上文数组部分)1.2 一维数组1.2.3 一维数组的初始化和遍历1.2.4 冒泡排序法二、二维数组2.1 二维数组的定义2.2 二维数组的初始化和遍历三、字符数组和字符串3.1 字符串逆序3.2 插入数据四 、字符串函数4.1 为什么要使用字符串函数4.2 常用字符串函数4.2.1 strlen()4.2.2 strcmp()4.2.3 strcpy()4.2.4 strcat()4.2.5 自己实现str
2022-01-20 20:59:12
186
原创 从零开始的嵌入式系统开发学习Day3(linux C)
一、输入输出函数1.1 getchar()/putchar()1.1.1 getchar()头文件:#include <stdio.h>原型:int getchar(void);功能:从终端读取一个字符参数:无返回值:从终端读取到的字符#include <stdio.h>int main(int argc, const char *argv[]){ /*int ch; c...
2022-01-18 21:45:01
1348
原创 从零开始的嵌入式系统开发学习Day2(C语言入门)
一、第一个c程序简单讲解1.1 代码注释方式1:注释一行//...方式2:注释多行/*...*/方式3:注释多行(开关语句)#if 0...#endif1.2 中英文切换ctrl + space(需要预装搜狗输入法)1.3 hello world//#:预处理指令,在gcc编译器的第一个阶段就会执行的东西//#include:要包含的文件,要是用哪个函数,就需要包含声明所在的头文件//<>:用来包含头文件,也可以使用""//stdio.h:..
2022-01-17 09:18:23
797
原创 从零开始的嵌入式系统开发学习Day1(初识linux)
一、什么是嵌入式?以计算机应用为核心,软硬件可裁剪的专用计算机系统,对功耗、体积、成本、可靠性有要求的系统。(软件控制硬件)Unix、linux、macOS、安卓、鸿蒙、iOSUnix:macOS,iOSlinux:安卓,ubuntu,redhat,deepin,centoswin:Windows二、linux发展三、linux系统的层次应用层APP,Makefile,命令,脚本内核层内核层的五大功能:文件管理:...
2022-01-14 17:55:11
1067
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人