- 博客(37)
- 收藏
- 关注
原创 嵌入式学习第三十六!(FrameBuffer的使用)
可以译作“帧缓冲”,有时简称为fbdrv。这是一种独立于硬件的抽象图形设备,是Linux为显示设备提供一个接口,把显示抽象后的一种设备,允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作,即向应用层提供一个统一标准接口的显示设备。用户无法通过用户内存空间向显存内存空间写入RGB颜色值,但可以通过内存映射单元,将用户空间的部分内存,映射到显存空间,实现RGB颜色值数据的写入,再通过显卡的转换在显示屏中显示。即通过内存映射技术,向显存中写入RGB颜色值,从而实现像素点的绘制。
2024-05-15 09:22:53
1591
原创 嵌入式学习第三十四天!(哈希表)
1. 在记录的存储位置和它的关键字之间建立一种去特定的对应关系,使得每个关键字key对应一个存储位置;在查找时,根据确定的对应关系,找到给定的key的映射。2. 开放定址法:通过哈希函数找到地址,判断是否存在数据,如果没有数据存储,直接存储,如果有向下找没有存放数据的地方存储。查找时,根据同样的散列函数计算记录的散列地址,并按此散列地址访问记录。拿到不同数据的关键字,但经过哈希函数的映射,映射到同一地址,称为哈希冲突或哈希矛盾。3. 链地址法:存储的是链表的地址。
2024-05-13 11:19:46
561
原创 嵌入式学习第三十二天!(队列)
是只允许一端进行数据插入,而另一端进行数据删除的线性表。(先进先出FIFO),如下图所示。缓冲区,即解决高速设备和低速设备数据交互的时候,速度不匹配问题int front;int rear;}SQE_QUE;
2024-04-10 20:20:28
615
1
原创 嵌入式学习第三十二天!(栈)
栈:只允许从一端进行数据的插入和删除,具有一对一线性的存储结构(先进后出,后进先出,FILO)栈的插入操作:叫做进栈,也称压栈、入栈栈的删除操作:叫做出栈,也有的叫作弹栈#if 0int id;int score;}DATA_TYPE;#endif。
2024-04-07 20:07:03
522
原创 嵌入式学习第三十一天!(双向链表)
int id;int score;}DATA_TYPE;}DOU_NODE;int curlen;}DOU_LIST;#endif。
2024-04-07 19:21:41
302
原创 嵌入式学习第三十天!(单向链表练习)
可以发现这段代码可以将所有数据为data的链表结点都删除了,如果只想删除第一个的话,那就在找到第一个数据为data的结点以后,将结点free掉,然后直接return,那么程序就实现了只删除第一个。在这里的逆序,利用了头插法的思想,因为利用头插法插入数据,数据是逆序插入的,最后插入的数据在最前面,最先插入的数据在最后面,那么逆序也可以使用这个思想。
2024-03-19 21:09:01
889
原创 嵌入式学习第二十九天!(数据结构的概念、单向链表)
LINK_NODE;int curlen;}LINK_LIST;#endif说明其中struct node还未定义的时候就用struct node *定义pnext:因为不管是char *还是int *等还是struct node *都是指针类型,它都占8个字节,但是如果不加*,那么系统就不知道结构体构建的内存空间的大小,所以就会报错。
2024-03-18 23:19:15
1468
原创 嵌入式学习第二十八天!(数据库)
1. 关系型数据库:Mysql、Oracle、SqlServer、2. 非关系型数据库:Redis、NoSQL。
2024-03-12 22:41:09
1331
原创 嵌入式学习第二十六天!(网络传输:TCP编程、HTTP协议)
TCP进行网络通信需要进行三次握手和四次挥手,所以比UDP更加安全和稳定,但资源消耗大,操作复杂
2024-03-07 21:44:36
1652
原创 嵌入式学习第二十五天!(网络的概念、UDP编程)
1. 编写程序实现从终端接收字符串发送给windows软件调试助手,并接收软件助手的回复,显示在终端屏幕上。子网掩码是1的部分表示IP地址的网络位。子网掩码是0的部分表示IP地址的主机位。TFTP 简单文本传输协议。FTP 文件传输协议。SMTP 邮件传输协议。子网掩码:255.255.255.0。子网掩码:255.255.0.0。子网掩码:255.0.0.0。例如有:HTTP 超文本传输协议。子网掩码:用来标识IP地址的网络位和主机位。成功返回实际发送字节数。
2024-03-05 23:44:43
1803
原创 嵌入式学习第十八天(目录IO)
创建目录文件文件路径文件的权限目录中是否能够查看文件目录中是否能够新建文件目录是否能够进入成功返回0失败返回-1。
2024-02-19 22:51:16
585
1
原创 嵌入式第十七天!(文件IO)
标准IO和文件IO的区别:1. 标准IO是库函数,是对系统调用的封装2. 文件IO是系统调用,是Linux内核中的函数接口3. 标准IO是有缓存的4. 文件IO是没有缓存的。
2024-02-18 23:30:32
674
1
原创 嵌入式学习第十六天!(Linux文件查看、查找命令、标准IO)
操作系统的内核:1. 管理CPU2. 管理内存3. 管理硬件设备4. 管理文件系统5. 任务调度。
2024-02-03 23:20:29
1251
1
原创 嵌入式学习第十五天!(内存管理、链表)
申请堆区空间size:申请堆区空间的大小返回获得的空间的首地址,失败返回NULL释放堆区空间1.free只能释放堆区空间2. 一个空间只能被free一次,对此free程序会崩溃3. malloc需要和free搭配使用,如果只有malloc没有free会内存泄露要求申请堆区空间,将“hello world”存放到堆区空间,完成打印。
2024-01-31 22:57:37
947
原创 嵌入式学习第十四天!(结构体、共用体、枚举、位运算)
嵌入式学习第十三天!(const指针、函数指针和指针函数、构造数据类型)-优快云博客。
2024-01-30 23:48:11
1524
1
原创 嵌入式学习第十三天!(const指针、函数指针和指针函数、构造数据类型)
struct 结构体名数据类型1 成员变量1;数据类型2 成员变量2;数据类型3 成员变量3;......数据类型 变量名;数据类型 *指针变量名;
2024-01-29 22:30:42
1369
原创 嵌入式第十二天!(指针数组、指针和二维数组的关系、二级指针)
主要用来操作字符串数组,通常将指针数组的每个元素存放字符串的首地址实现对多个字符串的操作。主要用来存储字符串数组,通过每行存储一个字符串,多行存储多个字符串所组成的数组。
2024-01-28 23:49:41
557
1
原创 嵌入式学习第十一天!(数组与指针的关系、数组指针)
数组的数组名是指向数组第一个元素的一个a == &a[0]的类型可以理解为有两种情况除外 1.运算符 2.运算符。
2024-01-26 23:08:25
823
1
原创 嵌入式学习第十天!(宏、指针)
int *p;int *q;int *p, *q;野指针:未经初始化的指针,指向已经被释放过空间的指针称为野指针,指针一定记得初始化空指针NULL0x0,指向内存地址为0x0的指针所有的指针变量占8个字节直接访问:通过变量的变量名访问内存空间间接访问:通过变量在内存中的地址访问变量空间。
2024-01-25 23:00:22
1243
1
原创 嵌入式学习第八天!(字符串常见操作、二维字符数组和函数)
数据类型 数组名[行数][列数];函数类型 函数名(数据类型1 形式参数1, 数据类型2 形式参数2, ...)函数体;return 返回值;函数运行结果的类型(int float double char void)1.函数类型如果不写,默认为int类型2.函数返回值缺省,应该写void类型3.函数类型应该与返回值的类型一致,如果不一致以函数类型为准1.由字母、数字和下划线构成,不能以数字开头2.不要与C语言关键字重名3.最好不要与C语言库函数重名。
2024-01-23 22:43:23
1178
1
原创 嵌入式学习第七天!(二维数组、字符数组)
数组类型 数组名[行数][列数]//2行3列的二维数组行数和列数:整型常量或整型常量表达式,不能为变量或变量表达式。数据类型 数组名[元素个数];注意:1. 元素个数必须为常量或常量表达式,不能为变量或变量表达式2. 元素个数必须能够容纳下所有字符(包括\0)字符型数组和字符串区别:1. 字符型数组可以存放字符,不一定包括\0;2 字符串最末尾一定要有\0;
2024-01-22 21:20:11
1271
原创 嵌入式学习第六天!(for循环和一维数组)
数组类型 数组名[元素个数];//int a[5];元素个数必须为常量或常量表达式,不能是变量或变量表达式int n = 5;int a[n];//错int a[n+2];//错int a[5];//对int a[2+3];//对。
2024-01-20 22:19:57
1141
原创 嵌入式学习第五天!(分支结构和循环结构)
1. 从终端接收一个字母,打印出该字母在字典中的下一个字母,例如: 'a' -> 'b', 'A' -> 'B',如果是 'z' 或者 'Z',打印 'a' 或者 'A';并且如果输入的是大写的字母,那么输出小写的字母,如果输入的是小写的字母,输出大写的字母;1. 从终端输入一个成绩,90 - 100之间打印 :优秀;3. switch只与case后面的值比一次,如果相同则顺序向下执行,直到break或程序结束退出。编写程序利用循环实现 0 - 1000 的所有能同时被2,3,5整除的数字和值。
2024-01-19 23:16:38
1018
1
原创 嵌入式学习第三天!
"ab\\\123ab" 有7个字符: 'a' 'b' '\\' '\123' 'a' 'b' '\0'练习:定义三个变量,并对变量赋值,通过三目运算符获得3个数中的最大值并打印。3. 定义两个整形变量并对变量赋初值(初值为2位数),要求将两个数合并成一个新数并打印。小数据放入大空间:数据扩展,有符号数高位补符号位,无符号高位补0。定义两个变量可以是整形或者浮点数类型,对这两个变量赋值,"ab\0" 有4个字符: 'a' 'b' '\0' '\0'左值为整数类型,右值为浮点数类型,会舍弃精度。
2024-01-17 23:19:12
1069
原创 嵌入式学习第二天!
数据类型 变量名;1.变量名可以由字母、数字、下划线构成不能以数字开头2.变量名不能与C语言关键字重名3.变量名最好不要与库函数重名4.变量名最好是见名知意驼峰法:int MaxCnt;int MinNum;内核法:
2024-01-16 21:28:18
1201
4
原创 嵌入式学习第一天!
2.在test1下创建filename1.txt 在test2下创建filename2.txt 在test3下创建filename3.txt。示例:将刚刚上一步2中在当前登录用户的用户目录所创建的build目录文件删除。编写一个C语言程序利用printf打印如下图形 * *** ***** *** *3.并在test2目录下创建filename2.txt。3.将test1目录下的filename1.txt拷贝到test2目录下。4.将test2目录下的filename2.txt移动到test3目录下。
2024-01-15 21:45:07
1321
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅