【Linux】进程概念
本文演示所用系统为CentOS 7.6 1.操作系统操作系统是不会直接对用户提供服务的。因为这样会暴露自己的底层实现,对系统稳定性造成了威胁 操作系统是通过系统调用层的方式对外提供接口服务的。 这就好比你是通过前端按钮来使用一个网站的功能,而通常你是看不到网页的后端实现的。 Linux系统的底层是用C语言写的,所以这些接口服务本质上就是一些C语言的函数。这些函数用于操作系统的各种管理。 我们学习Linux的系统编程,本质上是在学习这些和系统对接的函数。 1.1 编程语言和系统对接不同的操作系统,其提供的各种管理硬件的函数是不同的。这时候我们的C/C++等其他语言想和系统对接 ...
【Python】在你的云服务/电脑上搭建Python环境
本篇wiki会教你在你的电脑/云服务器上搭建好Python环境 创建你的Python环境要想让bot跑起来,没有一个Python的环境怎么办? 本篇wiki会教你在你的电脑/云服务器上搭建好可以运行KOOK机器人的Python环境 1.windows在windows下写Python代码的方式有很多种,这里我介绍的是vs code 如果你已经有了Pycham等代码环境,直接使用即可,也没必要看这篇wiki😋 1.1安装Python 进入Python官网 https://www.python.org/ 找到download,下载最新的Python版本包 这里下载官方 ...
【Linux】比Xshell更爽,用vscode连接云服务器进行开发
本篇博客教你如何用VScode的remote ssh插件连接上linux云服务器进行代码开发~ [TOC] 1.下载vscodevscode是微软官方的一款多语言代码编辑器,其因为丰富而强大的插件而被非常多用户选中使用! 官网下载:https://code.visualstudio.com/ 在这里可以直接下载windows上的VSC,但是默认的下载链接下载是非常慢的! 1https://az764295.vo.msecnd.net/stable/da76f93349a72022ca4670c1b84860304616aaa2/VSCodeUserSetup-x64-1.70.0.ex ...
【Git】git仓库code review行话 | 转载
程序员这个行业,不管你是大佬还是小弟,代码code review是必不可少的。那么在git上,大家日常交流的缩写语,往往一下就能看出你道行的深浅,至少是入行时间,哈哈,不要露怯,勇敢的跟大佬过招拆招。 收集了一些实用的缩写,方便大家日常交流(装B) 123456789101112131415161718LGTM — Looks good to me,表示认可这次PR,同意merge 合并代码到远程仓库 ASAP -— as soon as possible! 尽快 ACK — acknowledgement, i.e. agreed/accepted change NAC ...
【Linux】一些工具的简单使用,vim/gcc/gdb/make
本篇博客将介绍linux下面一些简单工具的使用 [TOC] 1.vim编辑器1.1 安装vim1234# centossudo yum install vim# debiansudo apt-get install vim 需要注意的是,vim编辑器下不能使用CTRL+S来保存文件,因为在linux中这个快捷键的作用是暂停该终端,整个系统都会卡住,这时候使用CTRL+Q取消暂停就可以了。 1.2 文本操作vim一共有三种模式:命令模式,编辑模式,底行模式; 进入vim时就是默认的命令模式,此状态下敲击键盘会被识别为命令 按i进入编辑模式,此时的输入是正常写入文本 在命令模式中,按英文半 ...
【Git】提交信息规范 | 转载
git代码提交规范的那些事 1.提交格式1type(scope): message 2.参数介绍2.1 typetype:指的代码的提交类型,不同的提交类型表示对应不同的代码改动,比如: feat:新功能的开发 fix:bug的修复 docs:文档格式的改动 style:代码格式改变 refactor:对已有的功能进行重构 perf:性能优化 test:增加测试 build:改变了build工具 revert:撤销上一次的commit提交 chore:构建过程或辅助工具的变动 2.2 scopescope:用于说明commit影响的范围,比如:权限模块、还是首页 2.3 messa ...
【Git】在Windows CMD中和VScode中配置已经安装好的git
本篇博客将教您如何将sourcetree下载好的git导入到windows的cmd进行使用 问题引出 我使用系统为win11。win10的操作理应相同,只不过设置的位置可能有差异 我现在使用git主要用的是sourcetree的可视化界面,可以清楚地看到每一次提交的diff和提交历史,非常好用,也强烈推荐大家使用 【使用教程】 不过当你初次安装sourcetree的时候,他会帮你下载一个git 如果系统中已有git,也可能会被移动到sourcetree自己的内置使用目录中 这样就会对我们在其他地方使用git-cmd造成一定的不便。 对于git仓库,sourcetree会提供一个命令行 ...
【C++】搜索二叉树/KVL树
暑假已经过去一半了,你的作业写的怎么样了? 不八八这些没啥用的了,本篇博客让我们来认识一下搜索二叉树以及KVL树,也为后续学习map和set打下基础。 在之前,我写过一篇用C语言实现的二叉树博客。如果你想了解二叉树的基本定义,可以看看👉 【传送门】 [TOC] 前言树是我们生活中非常常见的玩意,其特点便是从下而上有非常多的分叉 数据结构中的树便是以该特点命名的,每一个节点会有左右两个分叉来链接左右子树,从而构成一种数据结构。 1.搜索二叉树所谓搜索二叉树(二叉查找树),便是致力于方便搜索的一种数据结构,其具有一下特点: 比该节点大的数存放在右边 比该节点小的数存放在左边 这样 ...
【C++】STL:stack/queue/priority_queue/deque
来喽,STL的栈和队列! [TOC] 1.Stack栈是一个遵循LIFO规则的容器,即后进先出(last in first out)。后放入容器内的数据会先出来。 如果你不太理解栈的性质,可以先看看我写的C语言栈的博客【链接】 打开Cplusplus一看,栈的函数肉眼可见的少。这和我们C语言实现的功能基本是一样的。 它甚至没有拷贝构造! 1.1 容器适配器等会,这个container是什么玩意? 别急,先让我们来看看栈的类定义👇 12std::stacktemplate <class T, class Container = deque<T> > clas ...
【C++】STL:list
阿巴阿巴,list的博客来喽! [TOC] 1.list是嘛玩意?之前的vector是一个顺序表。总所周知,学完顺序表肯定不能不学链表,所以list就来了! list是一个可以在任何地方进行插入删除的序列式容器,可以进行前后双向迭代 说人话就是:list是一个双向带头循环链表 这不巧了嘛!之前我写过用C语言实现双向带头循环链表的博客 其优缺点也很明显 支持快速插入删除O(1) 支持前后双向迭代访问 不支持任意位置的随机访问 STL中的list也满足上面的这些优缺点 话不多说,来看看list的函数接口吧! https://m.cplusplus.com/reference/lis ...