自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 问答 (1)
  • 收藏
  • 关注

原创 查询操作系统的版本,CPU序列号以及操作系统所在的SN

查询操作系统的版本,CPU序列号以及操作系统所在的SN。

2022-08-10 15:29:35 1362

原创 管道读写报错121:信号灯超时时间已到

管道报错121:信号灯超时

2022-05-23 17:51:23 3524 1

原创 时间戳转成日期

再将时间戳转成日期格式前我们要知道一些库函数,与time.h中定义的一些数据。1.将time_t类型时间转换成时间结构体tm形式struct tm * gmtime(const time_t *timer); struct tm * localtime(const time_t * timer);2.tm时间结构体#ifndef _TM_DEFINEDstruct tm { int tm_se

2022-05-10 11:32:52 2285

原创 学习记录(2022年四月份)

2022_04_011.实现客户端服务端持续进行交互2.如何让一个服务程序启动多个服务LPSERVICE_MAIN_FUNCTION 类型定义指向此回调函数的指针。服务的入口点3.再将程序打包后,在没有VS环境下会报错:丢失VCRVNTIME140.dll解决:a.安装需要的运行时库b.将需要的.dll文件放入.exe文件的目录下...

2022-04-07 17:29:24 659

原创 实现将递归遍历文件,并将文件路径存储到map中且可以进行不同形式的查询,增加,删除等操作

实现文件路径的递归查询(并且在这里解决了重定向,权限等问题)

2022-03-31 15:34:09 455

原创 Windows系统编程C/C++--互斥量

在用户模式下进行线程同步的最大的好处就是速度快。如果关心应用程序性能问题,那么应该先考虑用户模式下的同步机制是否适用。但是同时也存在局限性,对于一些函数只能对一个值进行操作,他们从来不会将线程切换到等待状态。因此我们可以用关键段来把线程切换到等待状态,但是只能对待同一个进程中的线程进行同步。除此之外还容易陷入死锁状态,只是因为我们无法进入关键段指定一个最长时间。...

2022-03-25 18:24:33 326

原创 Windows核心编程C/C++读书笔记

Windows核心编程--错误处理

2022-03-23 10:09:10 984

原创 文件路径的保存且进行增删改查操作--利用树进行实现,是将每个文件或文件夹保存到一个节点,然后用树形结构结构进行存储,但是存在一些问题。

将计算机某个目录下的所有路径存储到一棵树中,并进行增删改查操作。

2022-03-15 10:08:31 340

原创 学习记录(2022年3月份记录)

学习记录更新...

2022-03-03 11:24:42 394

原创 详解AVL树(平衡二叉树)

插入节点后对树进行旋转调整,分为四种情况。1.右单旋当一个平衡二叉树满足具有较高左子树时(如下图A),且要插入的节点插入到了较高左子树的左侧,此时进行右单旋。

2021-09-20 11:37:28 20205 4

原创 C/C++智能指针

我们在在动态开辟空间的时候,malloc出来的空间如果没有进行释放,那么回传在内存泄漏问题。或者在malloc与free之间如果存在抛异常,那么还是有内存泄漏安全。因此我们在这里引入了智能指针来对资源进行管理。(内存泄漏)1.使用及原理1.1RAII(资源获取几初始化)RAII(Resource Acquisition Is Initialization)是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等等)的简单技术。 在对象构造时获取资源,接着控制对资源的访问使之在.

2021-09-16 18:32:41 2071 6

原创 Linux--网络4(网络层)

一.IP协议二.地址管理三.路由选择

2021-09-12 09:40:03 268 2

原创 Linux--网络3(传输层)

传输层是负责数据能够从发送端传输到接收端一.UDP协议1.1UDP协议的特性特性:无连接,不可靠,面向数据报无连接:UDP客户端给服务端发送消息的时候,不需要和服务端先建立连接,直接发送(客户端也是不清楚服务端是否正在在线) 不可靠:UDP并不会保证数据是可靠有序到达对端 面向数据报:UDP数据不管是和应用层还是网络层传递,都是整条数据交付的1.2UDP协议端格式如下图所示,这里的数据又叫做有效载荷(应用层的数据)16位源端口:当前的UDP数据从那一个进程产生 16位目的

2021-09-08 11:13:07 1459 5

原创 Linux--网络2(应用层)

在学习HTTP协议时,我们需要掌握的内容有九个。

2021-09-03 10:44:03 1417 7

原创 笔试题总结-编程题

题目大多来自牛客和LeetCode。在这里会附上链接。1.组队竞赛

2021-09-01 15:54:25 170

原创 笔试题总结--选择题(每日更新)

正确答案是红色的选项。1.以 下 for 循 环 的 执 行 次 数 是()。for(x=0,y=0;(y=123)&&(x<4);x++);A.是无限循环 B.循环次数不定 C.4次 D.3次2.以下程序的运行结果是()int main(void) { printf("%s , %5.3s\n","computer","computer"); return 0; } A.computer...

2021-09-01 11:10:08 1974

原创 C++三大特性-继承

一.继承的概念及定义

2021-09-01 10:29:13 558

原创 项目记录--文件压缩1

1.文件压缩的概念文件压缩是指在不丢失有用信息的前提下,所见数据量以减少存储空间,提高其传输,存储和处理效率,或者按照一定的算法对文件中数据进行重新组织,减少数据冗余和存储的空间的一种技术方法。2.文件压缩的优点a.紧缩数据存储容量,减少存储空间b.可以提高数据传输的速度,减少带宽占用量,提高通讯效率c.对数据的一种加密保护,增强数据在传输过程中的安全性3.文件压缩的分别我们根据解压缩的结构是否产生损害,将其分成无损压缩与有损压缩。无损压缩是指解压缩的结构与被解压缩的内容是完全相同的,常见的

2021-08-22 19:23:01 354 1

原创 Linux--网络1(网络协议,传输及地址管理)

网络解决的问题是牵扯到数据双方的。一定会存在数据发送方和数据接收方。而此时的发送方和接收方就是某一个进程。网络解决的不同机器之间不同进程的进程通信问题。一.网络协议网络协议解决的就是网络双方发送的网络数据格式问题,网络协议本质上就是对发和接受的数据的格式做出约定。1.1协议分层--OSI七层模型OSI七层模型是一个理论模型在工业当中引用的并不是很广泛。他包含物理层,数据链路层,网络层,传输层,会话层,表示层和应用层(物数网传会表应)。物理层:他负责将数据转换成光电信号,将光电信号转换成二

2021-08-18 12:32:42 1450 5

原创 linux--线程

一.线程概念线程又称之为轻量级进程,代表一个进程中某个单一顺序的控制流。线程是进程号中的一个实体,是被系统独立调度和分配的基本单位。图11.1pid&tgidpid:线程号(轻量级进程号)内核当中没有线程的概念,称之为轻量级进程。线程的概念是c标准库当中的概念。 tgid:线程id,对标的就是进程id。注意:在主线程中pid就相当于pgid。而在工作线程中同一个线程组当中的tgid是相等的,标识的是同一个进程,pid是不同的,标识不同的线程。1.2线程标识符主线程和.

2021-08-17 10:49:38 525 1

原创 list与vector的区别

list与vector都是STL中的容器,vector是表示可变大小数组的序列容器。 就像数组一样,vector采用的连续存储空间来存储元素。而list的地层结构是链表。因此连个容器的底层不同,因此他们表现也不同。我们从七个方面进行总结。

2021-08-14 22:15:19 1608 2

原创 C++--模板&STL(1)

一.函数模板函数模板是通用类型的代码,是通用的函数描述,也就是说他们用泛型(泛型可具体指类型 )来定义函数。举个栗子://并不是一个真正的函数,他只是一个模板template<typename T> //模板参数列表--告诉编译器T是一种类型T Add(T left,T right){//参数列表 cout<<typeid(T).name()<<endl; //查看类型 reutrn left+right;}建立一个模板并将模板...

2021-08-14 22:13:35 863 8

原创 Linux--IO

一.C语言当中文件操作接口在C语言中我们学习了一些文件操作接口,现在我们先复习一下吧。1.1.fopen()File* fopen(const char* path,const char* mode);参数:path:带打开文件的路径 mode:以何种方式进行打开(r,w,a) r 可读 r+ 可读可写 w 可写 w+ 可读可写(如果文件不存在,则创建文件如果是打开文件已存在,则截断文件,清空文件内容) a

2021-08-05 20:44:37 85 2

原创 linux--网络编程之socket

一.网络协议1.1协议分层OSI七层模型-->物数网传会表应(物理层,...)TCP/IP 五层、四层模型应用层:程序员写的代码(典型协议:HTTP协议,DNS协议)传输层,网络层,数据链路层,物理层:内核当中网络协议栈就将代码写好了传输层:负责端与端之间的传输(典型协议:UDP协议,TCP协议)网络层:负责地址管理和路由选择(典型协议:IP协议,典型设备:路由器)数据链路层:负责相邻设备之间的传输(典型协议:以太网协议,典型的设备:交换机)物理层:负责将数据转换.

2021-08-03 11:49:17 600 2

原创 linux--进程信号

一.信号的概念信号是一个软件中断。二.信号的种类2.1非可靠信号(非实时信号)非可靠信号为1~31信号,信号可能会丢失。2.2可靠信号(实时信号)可靠信号为34~64信号,信号绝对不会丢失。三.信号的产生方式3.1硬件产生ctrl + cctrl + |ctrl + z3.2软件产生kill命令kill -9命令kill() ;raise() ;abort();-->6号信号alarm();-->14号函数四.信号注册

2021-07-26 16:33:25 292 2

原创 c++ — 类和对象

我们在学习C语言时知道,C语言是面向过程的语言,他关系的是是完成事情的过程,以函数进行驱动,在对于比较规模的程序来说,我们可以直接编写出一个mian'xiang'guo'cehng

2021-07-10 16:06:56 2145 3

原创 Linux--进程控制

一.进程创建1.1写实拷贝一般情况下,父子进程代码共享,数据独有,如下图:二.进程终止2.1进程终止退出场景代码执行完成且正确 代码执行完成,但是不正确 代码异常终止2.2常见的终止方法main函数中return exit()函数,_eixt()函数 cttrl+c介绍exit()和_eixt()函数:void exit(int status);他是一个库函数 谁调用谁退出 status是进程退出的状态码void _eixt(int status..

2021-06-30 11:36:03 159 4

原创 linux--进程基础

Linux进程1.冯诺伊曼体系结构1.1体系结构示意图1.2重要思想2.操作系统2.1linux操作系统内核2.2系统调用3.进程管理3.1进程和程序的区别3.2从内核的角度看进程3.3进程状态4.folk创建进程1.冯诺伊曼体系结构1.1体系结构示意图计算机的基本硬件是由运算器,控制器,存储器,输入和输出设备5大部件组成。运算器和控制器等部件被集成在一起称之为中央处理器(CPU)。1.2重要思想a.所有数据采用二进制存储–>契合电路的特性b.数据都保存在存储器中2.操作系统操作系统

2021-06-28 16:20:16 218 2

原创 linux--工具

1.yum2.vim2.1使用vim编辑文件vim [文件名称]2.2三种模式正常模式:在正常模式下是不能往文件中进行写入的,需要进入到插入模式才可以正常写文件插入模式:按i键进行掺入模式,就可以进行正常插入文件内容,esc可以从任何模式回到正常模式第行模式:使用":"就进入底行模式:w 保存:wq 保存并推出:q 不保存,直接退出:q! 强制退出2.3移删复替撤更跳a.在正常模式下的快捷操作移动光标上下左右键h:光标向左移动,j:光标向下移动,k:

2021-06-11 16:29:36 104 2

原创 linux--创建普通用户&&linux权限&&基本指令

1.创建普通用户root用户再linux操作系统当中时管理员用户,拥有最高权限。创建普通用户: useradd [创建用户的名称]如果没有报错输出,说明命令执行成功!!!2.基础命令1. ls命令(Linux下的所有命令都是一个可执行程序。)作用:a.针对的是目录,则展示目录下的文件夹或者文件b.针对的时文件,则展文件的信息命令的范式:ls [命令行参数] [目录或者文件]如果ls后面不加任何目录文件或者文件夹,则表示输出当前目录下的内容。命令行参数作用-l

2021-06-09 15:17:33 2273 1

原创 二叉树(2.二叉树的遍历和实现)

##2.5二叉树的遍历什么是遍历?按照某种特性规则,对二叉树中的结点进行某种相应的操作,并且每个结点只操作一次。###2.5.1前序遍历又称先根遍历,访问根结点的操作发生在遍历其左右子树之前。//前序遍历void preorder(node* root){ if(root){ printf("%d" ,root->data); preorder(root->left); preorder(root->right); }}###2.5.2中序遍历又称中根遍

2021-06-06 15:48:23 502 4

原创 数据结构--排序

1.排序的概念排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。稳定性:在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。内部排序:将数据一次性加载到内存中。外部排序:数据元素太多不能同时放在内存中,根据排序过程的要求不能在内外存之间移动数据的排序。2.常见的排序算法2.1直接插入排序单个元素的插入给定一组元素[1,2,3,4,6,7,8,9] ,

2021-06-05 08:13:17 240 1

原创 二叉树(1.二叉树的概念&&堆)

1.树1.1树的概念树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成的集合。1.2结构有一个特殊的结点,称为根结点,根节点没有前驱结点除根节点外,其余结点被分成M(M>0)个互不相交的集合T1、T2、……、Tm,其中每一个集合Ti(1<= i<=m)又是一棵结构与树类似的子树。每棵子树的根结点有且只有一个前驱,可以有0个或多个后继树是递归定义的...

2021-05-29 15:07:15 876 6

原创 堆实现代码

heap.h#pragma oncetypedef int DType;typedef struct heap{ DType* array; int capacity; int size;}heap;//初始化heap* heapInit(heap* hp, DType*array, int capacity);//插入void heapInsert(heap* hp, DType data);//删除void heapdel(heap* hp);//获取堆顶元素.

2021-05-29 10:41:04 96 1

原创 数据结构--队列

#####1.队列的基本概念它只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out)#####2.队列的特性先进先出入队:进行插入操作的一端称为队尾出队:进行删除操作的一端称为队头#####3.队列的方法及其实现在考虑如何实现队列,我们采用链式结构进行实现–带头结点的链表。a.初始化//初始化void QueueInit(queue* q){ assert(q); q->Qhead = q-&gt

2021-05-26 18:14:54 214 2

原创 数据结构--栈(概念&实现)

1.堆栈:

2021-05-20 17:04:12 111

原创 单链表--oj题(1)

在刷算法题经常遇到的关于单链表的题。1.给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。在这道题中,我们要对其不同情况而进行不同的处理,这里我们需要关心头结点是否要进行删除。struct ListNode* removeElements(struct ListNode* head, int val){ struct ListNode* cur=head; if(!head) return head

2021-05-19 21:48:17 150

原创 双向循环链表的实现

1.dlist.h文件#pragma once#include<stdio.h>#include<malloc.h>typedef int DType;typedef struct DListnode{ DType data; struct DListnode* next;//定义结点的前驱指针 struct DListnode* prve;//定义节点的后继指针}DListnode;//需要实现的方法DListnode* getnewnode();//得到新

2021-05-18 17:41:55 125

原创 数据结构--链表(概念)

线性表的顺序存储结构的特他点是逻辑关系上相邻的两个元素下物理位置上也相邻。而线性表的链式存储它不需要地址连续的存储空间来实现,因为他不要求逻辑相邻的两个元素物理位置也相邻,他虽然访问比较繁琐,但是插入和删除比较容易。

2021-05-13 22:12:56 575

原创 数据结构--单链表的实现

之前我们了解了链表中的知识,现在我们进行实现,以C语言为例。我们都需要实现的功能:

2021-05-13 22:12:15 182

空空如也

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

TA关注的人

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