自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(152)
  • 收藏
  • 关注

原创 history命令

history 命令用于显示当前用户在命令行中输入的历史命令列表。它会列出之前执行过的所有命令,每条命令都会有一个编号。这个命令不进行过滤或搜索,只是简单地列出了所有的命令历史记录。grep “git”: grep 是一个用于搜索文本的命令,它可以从输入中过滤出包含特定模式的行。在这个指令中,我们使用 grep “git” 来搜索包含字符串 “git” 的行。history: 这个命令用于显示当前用户在命令行中输入的历史命令列表。它会列出之前执行过的所有命令,每条命令都会有一个编号。

2024-04-22 12:18:25 169

原创 开发仪表“时间设置功能”遇到的问题

在进行时间设置时没有按逻辑正常递增递减,在查问题期间花费了些时间,最后功能正常了。1、一个功能可以拆分成几个模块进行封装,减少代码的冗余度;3、注意是否有定时器在刷新,且用到了相同的变量。2、赋值时注意赋值到正确的控件上;

2024-03-30 17:43:32 106

原创 不小心将某个分支的本地代码推到另外一个远程分支上

将提交哈希值为 ***的提交应用到当前所在的分支上,这意味着该提交所做的更改将被复制并应用到当前分支上,作为新的提交。这个命令通常用于从一个分支上选择性地将某个提交应用到另一个分支上,而不需要将整个分支的更改都合并过来。若想将改动的代码提交到另外一个远程分支上,可现将改动的代码先推到对应远程分支上,再将该指定提交的更改应用到另外一个远程分支上。不小心将某个分支的本地代码推到另外一个远程分支上,是不会产生效果的,若提示了“Everything up-to-date。

2024-03-30 16:54:49 231

原创 GIT新建远程分支的操作过程

【代码】GIT新建远程分支的操作过程。

2024-03-30 16:15:12 276

原创 结构体类型struct _value_t

type 使用 8 位二进制表示,free_handle 使用 1 位二进制表示,而 value 可以是 int8_t、uint8_t、int16_t、uint16_t、int32_t、uint32_t、int64_t、uint64_t、uint32_t、float、float32_t、double、bool_t、void*、const char*、const wchar_t*、object_t*、binary_data_t 或 sized_str_t 中的一种类型。具体的类型取决于 type 字段的值。

2023-10-09 16:50:50 123

原创 搭建环境遇到的坑

office2010装完没法激活,因为没有关闭杀毒软件和防火墙。AWTK designer编译时报这个错,scons按这个方法装之后就好了。装AWTK designer后,打不开软件,总是闪退,装了VS后就打得开了装IAR时找不到ActivationInfo.txt,并被gpt误导了思路,ActivationInfo.txt这个文件自己建一个空的就好。

2023-10-07 22:32:54 156

原创 字符串改错题(找出代码中所有错误,将一个字符串倒序)

【代码】字符串改错题(找出代码中所有错误,将一个字符串倒序)

2023-09-29 17:22:38 191

原创 将给定的两个数组合并为一个新的数组,并将新数组进行降序排序。(C++)(字符串和数组的转化)

【代码】将给定的两个数组合并为一个新的数组,并将新数组进行降序排序。(C++)(字符串和数组的转化)

2023-09-26 11:55:00 754

原创 考察进制转化 十进制转为二进制

这个函数的作用是计算输入整数 x 的二进制表示中有多少个 1。

2023-09-26 10:25:39 57

原创 快速排序与冒泡排序以及代码

(Quicksort)是一种常用的排序算法,它基于的思想。时间复杂度:O(nlogn)空间复杂度:O(logn)

2023-09-25 22:13:21 621

原创 C++核心基础教程之STL容器详解 list

插入只有insert,没有push_back, push_front, 因为会自动排序set是用二叉树去管理的,稍微修改树的结构就会改变,所以他不允许修改,迭代器是只读迭代器。因为形参名和实参名相同,所以要用this。

2023-09-21 11:50:12 90

原创 构造Student类,实现HashMap类,HashMap的数据结构为 数组+ 链表

【代码】构造Student类,实现HashMap类,HashMap的数据结构为 数组+ 链表。

2023-09-15 23:40:00 58

原创 第四章 Linux网络编程

ARP 协议(Address Resolution Protocol)通过 IP 地址查找对应的 MAC 地址。当一个主机需要发送数据给另一个主机时,它首先会检查本地的 ARP 缓存表(ARP cache)中是否存在目标主机的 MAC 地址。如果存在,则直接使用该 MAC 地址进行数据发送。如果不存在该 MAC 地址,则需要使用 ARP 协议来获取目标主机的 MAC 地址。主机发送一个 ARP 请求消息(ARP Request)广播到局域网上的所有主机。

2023-09-12 23:43:31 255

原创 第四章 Linux网络编程

2023-09-12 23:43:08 31

原创 第三章 Linux多线程开发 线程取消 属性 同步 互斥锁 死锁 读写锁 生产者消费者 信号量

【代码】第三章 Linux多线程开发 线程取消 属性 同步 互斥锁 死锁 读写锁 生产者消费者 信号量。

2023-09-06 23:00:29 103

原创 第三章 LInux多线程开发 3.1-3.5线程创建 终止 分离

一般情况下,main函数所在的线程我们称之为,其余创建的线程称之为子线程。程序中默认只有一个进程,fork()函数调用,2进行程序中默认只有一个线程,pthread_create()函数调用,2个线程。

2023-09-06 21:59:24 168

原创 memcpy()和memmove()的区别

将字符串 str(包括字符串结尾的空字符)复制到指针 ptr 所指向的内存地址。具体来说,memcpy() 是一个C语言中的标准库函数,用于将一个内存区域的内容复制到另一个内存区域。参数解释:destination:要复制到的目标内存地址的指针。source:要复制的源内存地址的指针。num:要复制的字节数。在给定的代码中,ptr 是指向目标内存地址的指针,str 是源内存地址的指针。

2023-09-06 11:45:52 149

原创 C++核心基础教程之STL容器详解 vector容器的概述 vector常见的API

原理: v1是旧对象 v2是新对象 用拷贝构造 只会把实际大小的拷贝过来 给匿名对象,匿名对象存活的周期是当前语句,当前语句结束后匿名对象要释放。容器+作用域+迭代器 就是定义一个迭代器,迭代器的名称叫it 保存起始迭代器。*it == int 相当与取内容,像指针,但不是指针,因为底层很多细节。vector 一次开辟两倍原来的空间 另辟空间。

2023-09-05 17:02:49 110

原创 STL常用容器 (C++核心基础教程之STL容器详解)String的API

仿函数:比如说,排序默认从小到大排,我们想要实现从大到小排适配器:比如说,本来函数只能传一个参数,但我们需要传多个参数空间配置器:最重要但最不需要关心,因为会自动帮我们完成,自动申请内存,自动释放内存不同的容器的内存结构是不一样的,数据类型是不一样的,算法通过数据结构操作容器,为每个容器产生一个迭代器,迭代器与容器一 一对应。

2023-09-05 11:21:05 302

原创 第二章 Linux多进程开发 2.24-2.31 信号集及相关函数 共享内存 守护进程

1.用户通过键盘 Ctrl + C, 产生2号信号SIGINT (信号被创建)2.信号产生但是没有被处理 (未决)- 在内核中将所有的没有被处理的信号存储在一个集合中 (未决信号集)- SIGINT信号状态被存储在第二个标志位上- 这个标志位的值为0, 说明信号不是未决状态- 这个标志位的值为1, 说明信号处于未决状态3.这个未决状态的信号,需要被处理,处理之前需要和另一个信号集(阻塞信号集),进行比较- 阻塞信号集默认不阻塞任何的信号。

2023-09-04 23:53:40 321

原创 【2022】贝壳找房秋招C++工程师笔试卷1 牛妹的字符串

需要注意的是,在对字符串进行频繁的拼接操作时,由于字符串的动态扩展会导致内存分配和复制操作,可能会影响性能。执行k次,循环k次,每次循环里面,找到最小字母的时间赋值,时间赋值度O(n),覆盖的时间复杂度也是O(n), k最大是n,所以总体时间复杂度是O(n^2)牛妹拿到了一个只由小写字母组成的字符串s,接下来将字符串执行k次操作,每次操作都会把s中ASCII码最小的字母从s中删除,请返回k次操作之后的字符串s。这种拼接字符串的操作是合法的,因为在 C++ 中,fill是左闭右开的。

2023-09-01 16:50:47 107

原创 匿名函数( lambda 表达式)

在 C++ 中,匿名函数也被称为 lambda 表达式。C++11 引入了 lambda 表达式,使得在需要函数对象(函数符)的地方可以使用匿名函数来代替。其中,capture list 用于指定需要捕获的外部变量,可以是按值捕获或按引用捕获;parameter list 是可选的,用于指定函数的参数列表;return type 也是可选的,用于指定函数的返回类型;函数体即为 lambda 函数的具体实现。我们定义了,它接受两个参数并返回它们的和。

2023-08-31 16:02:00 136

原创 <algorithm> 头文件

find_if:在容器中根据给定的条件查找元素的第一个出现位置。sort、unique 组合:对容器进行排序并移除重复的元素。merge:将两个已排序的容器合并为一个已排序的容器。partial_sort:对容器的部分元素进行排序。transform:将一个容器的值转换为另一个容器。copy:将一个容器的元素复制到另一个容器。remove:从容器中删除指定值的所有元素。replace:将容器中的指定值替换为新值。fill:将指定值赋给容器中的所有元素。reverse:将容器中的元素逆置。

2023-08-31 12:05:36 2400

原创 第2章 Linux多进程开发 2.19-2.23 与信号相关的函数

回调函数(Callback Function)是一种特殊类型的函数,它作为参数传递给另一个函数,并在特定的事件发生或条件满足时由另一个函数来调用。函数作为参数传递:回调函数通常作为另一个函数的参数传递。注册回调函数:将回调函数作为参数传递给另一个函数,并在合适的时机注册该回调函数。定义回调函数:编写一个函数,其中包含特定的操作或逻辑,用于在特定条件下被调用。逻辑分离:将特定的操作或逻辑封装在回调函数中,可以使代码更加模块化和可维护。触发回调:当满足特定的条件时,调用者会触发回调函数,从而执行相应的操作。

2023-08-30 23:40:56 219

原创 第2章 Linux多进程开发 2.18 内存映射

内存映射:可以进行进程间的通信1.如果对mmap的返回值(ptr)做++操作(ptr++), munmap是否能够成功?ptr++;可以对其进行++操作// 错误,要保存地址2.如果open时O_RDONLY, mmap时prot参数指定PROT_READ | PROT_WRITE会怎样?错误,返回MAP_FAILEDopen()函数中的权限建议和prot参数的权限保持一致。3.如果文件偏移量为1000会怎样?偏移量必须是4K的整数倍,返回MAP_FAILED。

2023-08-30 16:31:55 942

原创 说说多态,多态有几种类型,怎么实现

由于该函数是虚函数且派生类进行了重写,因此会根据实际指向的对象类型来动态选择调用哪个函数。函数重载允许在同一个作用域内定义多个名称相同但参数类型或参数个数不同的函数,在编译时根据调用时传递的参数类型或个数来确定具体调用哪个函数。在基类中声明虚函数,并在派生类中进行重写,从而使得在通过基类指针或引用调用虚函数时,根据实际指向的派生类对象来动态选择调用哪个函数。3、通过基类指针或引用调用虚函数,系统会根据实际指向的派生类对象来动态选择调用哪个函数。静态多态(编译时多态)和动态多态(运行时多态)。

2023-08-30 16:02:52 757

原创 代码随想录 (六)二叉树

TreeNode表示二叉树节点的数据结构,其中int x表示节点的值,val(x)是将传入的值赋给节点的值成员变量。2.确定终止条件: 写完了递归算法, 运行的时候,经常会遇到栈溢出的错误,就是没写终止条件或者终止条件写的不对,操作系统也是用一个栈的结构来保存每一层递归的信息,如果递归没有终止,操作系统的内存栈必然就会溢出。1.确定递归函数的参数和返回值: 确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数, 并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。

2023-08-24 13:42:36 50

原创 代码随想录 (五)栈和队列

题意有说操作是有效的,不用去判断非法的情况。5.删除字符串中的所有相邻重复项。法二://这种不懂 看视频。6.逆波兰表达式求值。

2023-08-23 23:15:10 96

原创 代码随想录 (四)字符串

例如,如果范围是 [first, last),则对于 i 从 first 到 last-1 的每个位置,会将位置 i 的值和 last-1-i 的值互换。在上述示例中,我们使用 std::reverse 函数将整个向量 nums 中的元素翻转,输出结果为 5 4 3 2 1。std::reverse 函数接受两个迭代器参数,分别指定要翻转的范围的起始位置和终止位置(不包含该位置)。std::reverse 是 C++ 标准库中的一个函数,定义在 头文件中,用于对任意范围进行翻转操作。

2023-08-22 23:42:32 99

原创 代码随想录(三) 哈希表

1.有效的字母异位词 用数组。

2023-08-21 19:48:54 76

原创 代码随想录 (二)链表

【代码】代码随想录 (二)链表。

2023-08-19 01:36:43 127

原创 代码随想录(一)数组

2 [ ) 记住不是两边都开 所以左区间右区间解法不一样。1 暴力解法 O(n^2)2 双指针 O(n)

2023-08-16 11:06:56 53

原创 webserver笔记 刚入门的一些基本操作(其他在纸质版)

XShell 远程连接。

2023-08-15 23:27:38 118

原创 计网第四章网络层错题

没有要求结点要相邻,可不可靠主要取决于使用的协议,若使用有连接的 就可靠2.C本题易误选B 因为大家以为只能用ipv4 但是有特定的路由器可以连接IPv4和IPv6,所以网络层的协议也可以不同C 路由器无法处理比网络层更高层次的数据 所以必须相同转发给目的地所对应的IP地址 如果没有找到 会转发给默认路由R1的路由表 他不知道转发到B的完整路径 只知道目的主机是B的坏话 则直接转发到R2ICMP:用来给源主机报错11C 有南向接口和北向接口 也就是API 可以通过用户自己 进行编程。

2023-08-02 00:17:56 225

原创 计网 第三章错题整理 (3.4以后)

数据帧长度为128B的话 发送同样一个比特序列,需要更多的比特数 所以要以128B 的为准 否则 以512B的准的话 比特数太少了 128B的话 没法一次性发一个比特序列。③ 发送窗口不能大于接收窗口 否则窗口大小大于序号范围一般的时候 超时重传接收方没法辨别是新帧还是旧帧。本题有歧义 因为编号个数可以自定义的话,信道利用率都可达到百分之百。

2023-07-31 00:15:04 107

原创 计算机网络 第三章 数据链路层

这里是引用">

2023-07-28 00:48:18 33

原创 操作系统第五章 错题整理

设备独立性:逻辑设备到物理设备的映射 一个逻辑设备名可以对应多个物理设备 P1 P2申请同一类逻辑设备 但系统能分配给他分配不同的物理设备。A,:”执行“启动I/0”指令而被通道拒绝接收“这个事件是由指令引发的,因此是内部异常,而不是中断。B 对于同一组输入输出命令,只能指明一个位置,指明通道的某个寄存器 或者某个特定的设备控制器的某个寄存器 而无法同时指向两个地方。C 对IO控制器所接收到的CPU的信息进行译码 并送到外设中 IO逻辑是个芯片。A对于一些简单的IO设备 控制他也许用不到IO寄存器。

2023-07-25 17:36:27 211

原创 计算机网络 第二章 物理层 错题整理

QAM是正交振幅调制脉冲编码调制是一种编码 不是调制曼彻斯特一个比特可以表示两个电平 所以波特率是比特率的两倍基带:以脉冲形式 在数字信道上传,对数字信号进行编码频带:在发送端进行调制,调制成模拟信号 在接受端解调成数据信号波特率:Baud 码元/秒不用看采样的2W波特 每秒传16k码元 24>16 所以采样数据有点多余 做这种题不用考虑采样的本题说信噪比 没有说多少dB 指的是 S/N特别注意:二进制信号2*8=16 16个离散电平的数目本题考察波特率与比特率转化。

2023-07-24 15:19:54 48

原创 计组 第五-七章 错题整理

A. 自愿的 返回下条指令B. 故障C.D 都是外部中断 返回下条指令。

2023-07-22 00:12:47 172

原创 计组 第四章 错题

II 体系结构没有变。

2023-07-12 20:56:19 193

谷粒学苑第11天项目笔记

谷粒学苑第11天项目笔记

2023-03-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除