- 博客(61)
- 收藏
- 关注
原创 float转uint8_t数组
数据float类型3.14,在内存中4字节地址应该为0x4048f5c3。如果直接使用memcpy内存复制,0xc3会放在数组下标小的位置。
2024-08-04 15:28:33
980
原创 ARM DAY3
上电后内存发出取值信号,内存中将RCC使能,GPIO等外设初始化,已经执行外设功能指令发往soc,经过缓存器之后再发往内核寄存器中进行译码执行计算。之后内核通过总线连接soc上外设进行通信,通过ldr和str命令,RCC控制器上的特殊功能寄存器给外设使能,而其他外设也是由这两命令内核读取或写入外设上对应的特殊功能寄存器以此达到控制外设。
2023-09-19 08:58:45
438
原创 C高级 DAY4
case ...in语句shell中的switch语句其中常用到的条件有*通配所有情况,如果想使用*表示其他分支的情况,不能把*放在上面,与default不一样!
2023-09-11 21:14:24
581
原创 C高级 DAY3
shell本身是擅长运行指令,是一种弱数据类型语言它与c语言中定义变量有所不同注意:shell中等号两边不允许有空格,空格会被识别为一个指令使用变量时在变量前加$$变量名${变量名}无法区分变量名时使用不使用${变量名}使用${变量名}shell脚本的本质:命令的集合。
2023-09-10 21:23:21
540
原创 C高级 DAY2
类似于复制粘贴格式为:In 被链接的文件名 生成的硬链接文件名修改任意文件另一文件都会发生变化但如果,另一文件都,只有硬链接文件数为0时,才表示文件被删除当删除文件硬链接文件后在创建一个同名文件,这个同名文件是个全新的文件。
2023-09-08 00:12:16
346
原创 QT DAY7
主要完成多人聊天室,注册与登录使用sql3数据库进行对密码的保存,避免了用户重复登录、错误密码登录、重复注册的问题,之后使用TCP通信,连接上服务器后可在聊天室多人交流。
2023-09-05 21:02:47
283
原创 QT DAY4
而绘制事件中调用时机是:第一次展示窗口、窗口因最大化、最小化恢复正常状态、窗口因被覆盖后再次暴露、更改窗口大小、调用update函数都会调用绘制事件。当定时器时间超时后,就会有相关的动作进行相应,一个qt程序可以定义多个定时器,以处理不同的事情。定时器的实现有两种方式,分别是基于属性版本,和基于事件处理函数版本。1> 基于属性版本的定时器(QTimer),本质上是基于信号与槽。QT界面运行时主要调用了绘制事件,将图形化界面绘制在计算机上。2> 基于事件处理函数。
2023-09-03 20:12:31
1392
原创 QT DAY2
使用emit 加自定义信号名即可发射,在与槽函数连接后,槽函数会立即响应一个信号函数发射出,多个相连接的槽函数都可执行一个槽函数也可以同时响应多个与他连接的信号,只要一个信号被发射,该槽函数就会被执行一个信号函数可以连接到另一个信号函数,一个被发射后一个也会被发射信号与槽函数参数表为了传参有以下准则1、信号函数和槽函数进行链接时,一般要求信号函数和槽函数的参数保持一致connect(信号发送者, SIGNAL(signalFun()),信号接收者, SLOT(slotFun()));//Ok。
2023-08-31 20:15:12
1075
原创 QT DAY1
Assistant --> QT类库的帮助手册的工具Designer --> 用于设计图形化界面QTcreater --> QT继承开发环境工具# QT工程所需的类库 core是核心库 gui图形化界面相关类库#版本超过4.0,会加上widgets#该编译器支持C++11后的版本#管理源文件main.cpp \mywnd.cpp#管理头文件mywnd.h#管理ui文件FORMS += \mywnd.ui!
2023-08-30 20:28:45
1198
1
原创 C++ DAY7
63个关键字,红色(不包括class,class是修改之前的错误)的32个是c中的关键字1>asm1:这是一个用于嵌入汇编语言代码的关键字。它允许你在C++代码中直接插入汇编指令,通常用于执行特定的底层操作。然而,由于现代C++提供了更强大的抽象和跨平台性,通常不建议使用这个关键字。explicit2:这个关键字通常用于禁止隐式类型转换的发生。当一个构造函数被声明为explicit时,它将不会在隐式类型转换中被调用,只能在显式构造函数调用中使用。export。
2023-08-29 20:40:35
284
原创 C++ DAY6
每个具有虚函数的对象都有一个隐藏的成员,即虚指针(vptr),它在对象构造时自动设置,用于指向与该对象类型关联的虚函数表。————虚函数指在函数前加上virtual,虚函数满足继承(父类中该函数是虚函数),继承到子类中,该函数依旧是虚函数,如果之后继续继承,继承出的函数仍是虚函数。如果你想在创建汇聚子类的对象时初始化公共基类的数据成员,你需要在汇聚子类的构造函数初始化列表中显式调用公共基类的构造函数。父类的指针或者引用,指向或初始化子类的对象,调用子类对父类重写的函数,进而展开子类的功能。
2023-08-28 19:42:00
1378
原创 C++ DAY5
在创建出来的同一类中是一样的。在数据成员前加static ----->静态数据成员在成员函数前加static ------>静态成员函数。
2023-08-25 19:48:30
170
原创 C++ DAY3
当类中指针指向堆区空间,需要使用析构函数将其释放,若类对象消亡后找不到指针指向堆区空间,堆区空间未释放,会造成内存泄漏class Stuint *p;public:Stu():p(new int) //在不传参的情况下,给指针成员p用堆区的空间初始化cout << "Stu无参构造" << endl;Stu(int a):p(new int(a)) //在参数为整形变量的情况下,让p指向堆区申请的空间//但是把这篇空间的内容,用传过来的整形变量初始化。
2023-08-23 21:54:38
289
原创 网络编程 DAY3
不能,使用全局变量,在主线程中会不断修改newfd的值,每次有客户端连接时就会有新的newfd值,如果两个客户端几乎同时连接,那么第一个客户端的 newfd 可能会被第二个客户端的 newfd覆盖,导致第一个客户端的连接丢失或者混淆。不能,因为访问主线程newfd时会出现后一个覆盖前一newfd值的情况,如果分支线程直接通过指针访问它,当新的客户端连接时,newfd 的值可能会在分支线程还在使用它之前被更改。1. 多线程中的newfd,能否修改成全局,不行,为什么?
2023-08-14 21:37:10
55
原创 网络编程 DAY2+基于UDP的TFTP文件传输tftpd32(云盘)
简单文件传输协议,适用于在网络上进行文件传输的一套标准协议,使用UDP传输特点:是应用层协议基于UDP协议实现数据传输模式octet:二进制模式(常用)mail:已经不再支持2)tftp下载模型TFTP通信过程总结服务器在69号端口等待客户端的请求服务器若批准此请求,则使用 临时端口 与客户端进行通信。每个数据包的编号都有变化(从1开始)每个数据包都要得到ACK的确认,如果出现超时,则需要重新发送最后的数据包或ACK包。
2023-08-09 22:56:20
1303
原创 IO DAY7
1.在第一题的基础上加上一个需求:要求打印,倒置线程,顺序执行。出现的现象为先打印1234567,后打印7654321。2.创建两个线程,其中一个线程读取文件中的数据,另外一个线程将读取到的内容打印到终端上,类似实现cat一个文件。a.提示:先读数据,读到数据后将数据打印到终端上。cat数据完毕后,要结束两个线程。
2023-08-04 22:29:37
61
原创 IO DAY6
1.创建两个线程:其中一个线程拷贝前半部分,另一个线程拷贝后半部分。只允许开一份资源,且用互斥锁方式实现。提示:找临界区---》找临界资源。
2023-08-03 21:13:41
57
原创 IO DAY4
1.文件IO函数实现,拷贝文件。子进程先拷贝后半部分,父进程再拷贝前半部分。允许使用sleep函数。若该文件是目录文件,则将该文件下的所有文件的属性显示到终端,类似ls -l该文件夹。若该文件不是目录文件,则显示该文件的属性到终端上,类似ls -l这单个文件。2.从终端获取一个文件的路径以及名字。
2023-08-01 21:34:50
55
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅