自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一氧化二氢的执着

臭小子还不点赞收藏?

  • 博客(67)
  • 收藏
  • 关注

原创 [Win32] 实现内存修改器

实现简单的内存修改器

2020-05-30 11:07:44 1091 2

原创 [C++] 模板函数声明与实现的分离

函数模板定义与实现的分离

2021-12-21 21:36:43 1069

原创 [C++] 右值引用相关

学而不思则罔,思而不学则殆。文章目录1. 右值引用2. 移动构造3. 右值引用引用左值4. 右值引用的作用1. 右值引用C++98中提出了引用的概念,引用即别名,引用变量与其引用实体公共同一块内存空间,而引用的底层是通过指针来实现的,因此使用引用,可以提高程序的可读性。为了提高程序运行效率,C++11中引入了右值引用,右值引用也是别名,但其只能对右值引用。int Add(int a, int b){ return a + b;}int main(){ const int&&.

2021-09-25 23:55:31 342 2

原创 [Git] Git学习记录

Git学习记录

2021-02-09 19:38:04 211

原创 [数据库] 索引模型初探

目的: 索引的出现其实就是为了提高数据查询的效率,就像书的目录一样。索引的常见模型哈希表、有序数组和搜索树

2020-12-16 17:25:20 204

原创 T公司W部门二面面经

数据库如何理解数据库的事物.InnoDB如何设计和实现事物的?一个事物提交的流程.数据库脏读、不可重复读、幻读是什么?网络socket recv()有几个返回值?你是如何处理的?各种返回情况?失败有什么原因?收发包的流程?tcp已经建立了连接, 拔掉网线在发送数据write报什么错? 这是一个什么样的失败? -1之后你怎么处理?tcp网线拔了再插上有什么问题(假设ip固定)?你的理由?那拔了过了很久再插上?tcp可靠性如何体现?tcp 四次挥手timewait出现在哪一方? 这个

2020-12-12 00:04:24 127

原创 [Linux] 安装中文man手册

CentOS安装中文man手册

2020-12-10 14:40:21 264

原创 [网络] HTTP版本演变

Http协议版本演变概括.

2020-12-04 23:39:44 418 1

原创 如何通过C语言代码表白女程序媛 (直男必看)

代码表白嘻嘻

2020-12-02 21:30:36 4249 2

原创 [操作系统] 细说协程 (不看后悔)

协程的基本概念与发展.

2020-10-19 20:49:56 418 2

原创 网络基础知识

计算机网络–用来实现计算机间的通信物理层:一. 设计初, 两两间都需要通信, 每个计算机都需要互相拉线.(物理层)两两都需要拉线, 利用率低, 麻烦.转发.标识. 网络中表明自己的身份.二. 继续设计, 找一个中间代理(物理层)问题1发送, 2345同时接受1 2同时发送数据, 集线器只能转发电信号, 将两个信息杂糅起来共同发给其他设备. 导致消息无法解析数据广播效率低, 主机需要自己判断数据是不是自己的只有一个设备转发, 利用率低集线器只适用于小规模网络, 工作在物理层

2020-08-28 10:30:02 187

原创 网络层&链路层总结

文章目录1. 网络层1.1 网络层作用1.2 IP协议*1.2.1协议头格式1.2.2网段划分1.2.3特殊的IP地址1.2.4IP地址的数量限制1.2.5私有IP地址和公网IP地址1.2.6路由2. 链路层2.1 链路层作用2.2 以太网2.3 ARP协议2.4 DNS协议2.5 NAT技术3. 浏览器输入url发生什么(经典问题)1. 网络层1.1 网络层作用网络层: 负责地址管理和路由...

2020-03-30 16:59:16 673 1

原创 [网络编程] UDP&TCP详解

TCP UDP协议详细内容及TCP管理机制

2020-03-30 16:58:46 1572

原创 [网络编程]多路转接技术

文章目录0. 认识文件描述符1. 认识多路转接2. select3. poll4. epoll0. 认识文件描述符什么是文件描述符?在linux下一切皆文件,文件描述符是内核为了高效的管理已经被打开的文件所创建的索引,它是一个非负整数,用于指代被打开的文件,所有执行I/O操作的系统调用都是通过文件描述符完成的。在linux中,进程是通过文件描述符(file descriptors 简称fd...

2020-03-27 16:55:08 413

原创 [Linux]套接字编程

套接字编程: UDP TCP HTTP

2020-03-20 21:47:12 511

原创 [数据结构] 位图&布隆过滤器

位图 与 布隆过滤器相关内容

2020-03-19 10:32:25 312

原创 [数据结构] 哈希表

哈希, 开散列, 闭散列

2020-03-16 17:40:26 398

原创 [数据结构] 红黑树

红黑树的理解及简单实现

2020-03-04 21:29:52 308

原创 [数据结构] 搜索树与AVL树

搜索树与AVL树知识点总结

2020-03-02 21:29:26 423

原创 C++之烦躁的extern

extern C++

2020-02-18 01:15:53 208

原创 C++类型转换

C++类型转换知识

2020-02-17 22:23:51 147

原创 C++ 智能指针

C++智能指针学习

2020-02-17 18:49:50 156

原创 C++不能继承的类

实现一个不能被继承的类方法1. 将构造函数私化// C++98中构造函数私有化,派生类中调不到基类的构造函数。则无法继承class NonInherit{public: static NonInherit GetInstance() { return NonInherit(); }private: NonInherit() {}}...

2020-02-15 15:57:07 180

原创 [Linux]多线程

Linux多线程相关知识

2020-01-08 21:02:51 356

原创 [Linux]实现minishell

Shell基本上是一个命令解释器,类似于DOS下的command。它接收用户命令(如ls等),然后调用相应的应用程序。本文通过实现简单的minishell来练习对进程控制的学习

2020-01-07 21:36:57 384

原创 [Linux]进程控制

进程控制是进程管理中最基本的功能。它用于创建一个新进程,终止一个已完成的进 程,或终止一个因出现某事件而使其无法运行下去的进程,还可负责进程运行中的状态转 换。如当一个正在执行的进程因等待某事件而暂时不能继续执行时,将其转换为阻塞状态, 而当该进程所期待的事件出现时,又将该进程转换为就绪状态等等

2020-01-07 21:25:06 319

原创 进程同步问题经典例题(生产者消费者等)

文章目录0. 前言1. PV操作2. 同步与互斥模型3. 生产者-消费者问题4. 读者-写者问题5. 哲学家进餐问题0. 前言在 OS 中引入进程后,虽然提高了资源的利用率和系统的吞吐量,但由于进程的异步性, 也会给系统造成混乱,尤其是在他们争用临界资源时。例如,当多个进程去争用一台打印 机时,有可能使多个进程的输出结果交织在一起,难于区分;而当多个进程去争用共享变 量、表格、链表时,有可能致...

2020-01-07 11:16:36 1261 2

原创 [Linux]进程线程概念

文章目录1. 并行与并发2. 引入进程3. 引入线程4. Linux下的进程概念1. 并行与并发并行性和并发性(Concurrence)是既相似又有区别的两个概念,并行性是指两个或多个 事件在同一时刻发生;而并发性是指两个或多个事件在同一时间间隔内发生。在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分...

2020-01-07 10:59:14 294

原创 01背包问题

问题引入有 n 个物品和一个大小为 m 的背包. 给定数组 A 表示每个物品的大小和数组 V 表示每个物品的价值.问最多能装入背包的总价值是多大?A[i], V[i], n, m 均为整数你不能将物品进行切分你所挑选的要装入背包的物品的总大小不能超过 m每个物品只能取一次测试链接: https://www.lintcode.com/problem/backpack-ii/my-s...

2019-12-19 23:58:47 196

原创 [Linux]进程信号

进程信号0 概述1 信号的产生2 信号在进程中的注册3 信号的注销4 信号的捕捉处理5 信号的阻塞6 竞态条件7 SIGCHLD信号0 概述kill -l 查看信号种类, 共计62个[test@localhost ~]$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SI...

2019-12-14 21:39:38 116

原创 [Linux]进程间通信

前车之鉴, 后车之师开始0. 概述1. 管道1.1.1匿名管道概念1.1.2匿名管道代码实现1.2.1命名管道概念1.2.2命名管道代码2. 共享内存2.1共享内存代码3. 消息队列4. 信号量0. 概述1. 管道1.1.1匿名管道概念1.1.2匿名管道代码实现 1 #include <stdio.h> ...

2019-12-11 17:52:56 420

原创 [Linux]基础IO[open, write, read]

1. open2. write 1 #include <stdio.h> 2 #include <unistd.h> 3 #include <sys/types.h> 4 #include <sys/stat.h> 5 #include <fcntl.h> 6 #include <string.h&gt...

2019-12-01 21:40:40 123

原创 C++多态总结

荣耀存于心, 而非流于形文章目录0 前言1 多态的概念2 多态的实现条件3 多态体现4 多态的原理*4.1 虚函数表4.2 多态的原理4.3 多态的分类5 单继承和多继承模型5.1 单继承派生类模型5.2 多继承派生类模型6 抽象类6.1 抽象类概念6.2 接口继承与实现7 重载, 覆盖, 隐藏8 可以作虚函数的函数0 前言面向对象主要的特点就是封装, 继承, 多态. 而后两者关系之紧密...

2019-11-22 10:49:02 228

原创 [操作系统]模拟处理器调度的算法

概述按优先数调度算法实现处理器调度在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就绪进程个数大于处理器数时,就必须依照某种策略来决定哪些进程优先占用处理器。本次模拟在单处理器情况下的处理器调度要求设计一个按优先数调度算法实现处理器调度的程序假定系统有五个进程,每一个进程用一个进程控制块PCB来代表,进程控制块的格式为:进程名, 要求运行时间, 优先数, 状态其中,...

2019-11-17 22:53:55 1043

原创 [牛客网]偏移数组查找

题目描述有一个排过序的数组,包含n个整数,但是这个数组向左进行了一定长度的移位,例如,原数组为[1,2,3,4,5,6],向左移位5个位置即变成了[6,1,2,3,4,5],现在对于移位后的数组,需要查找某个元素的位置。请设计一个复杂度为log级别的算法完成这个任务。给定一个int数组A,为移位后的数组,同时给定数组大小n和需要查找的元素的值x,请返回x的位置(位置从零开始)。保证数组中元素...

2019-11-12 23:35:06 269

原创 [牛客网]任意进制转化

题目:给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数。输入描述:输入为一行,M(32位整数)、N(2 ≤ N ≤ 16),以空格隔开。输出描述:为每个测试实例输出转换后的数,每个输出占一行。如果N大于9,则对应的数字规则参考16进制(比如,10用A表示,等等)示例1:输入7 2输出111首先要知道如何进制转换, 你可以在纸上练习一下10(D)转成2...

2019-11-08 23:16:59 186

原创 C++继承总结

前言本文将粗略的介绍继承的一般性的概念及隐藏, 虚拟继承等难点, 主要目的还是服务于之后的多态, 因为继承主要就是为了实现多态.继承中主要还是概念的知识点, 但是这些知识与类的知识紧密联系到一起, 让我们对类有了更加丰富的操作.1. 继承的概念及定义1.1 继承的概念继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特 性的基础上进行...

2019-11-07 23:56:00 263

原创 Linux下的重要目录

Linux下一些重要目录的含义1. /proc/proc是系统内核提供的文件系统(也是伪文件系统),它放置的数据都是内核中的信息,例如:系统核心,行程信息,周边装置的状态以网络状态等等。而这些数据都是动态存放在内存中的,所以用户读取proc文件时,这个文件从动态内存中取出信息并提交。所以/proc目录存在于内存中,不占中硬盘空间。/proc下有三个很重要的目录:net,scsi和sys2....

2019-11-06 15:51:06 111

原创 C/C++中的static

static:C中的static1.修饰局部变量2.修饰全局变量3.修饰函数C++中的static1.静态成员2.静态函数C中的staticstatic是用来修饰变量和函数的修饰局部变量修饰全局变量修饰函数1.修饰局部变量static修饰局部变量改变了变量的生命周期,让静态局部变量出了作用域依然存在,到程序结束,生命周期才 结束。例如://代码1 #include <...

2019-10-29 20:32:22 166

原创 结构体对齐及联合体(大小端)--C语言

标题计算结构体大小计算结构体大小示例:为什么存在内存对齐?修改默认对齐数联合体什么是大端和小端联合体大小计算在掌握了结构体的基本使用后。现在我们深入讨论一个问题:计算结构体的大小。计算结构体大小如何计算结构体的大小:首先得掌握结构体的对齐规则:第一个成员在与结构体变量偏移量为0的地址处。其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处对齐数 = 编译器默认的一个对齐数 与 该...

2019-10-28 16:32:37 724

空空如也

空空如也

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

TA关注的人

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