自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一砚梨花雨

Zero To Hero

  • 博客(15)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 Linux 系统目录作用 | 文件权限

文章目录目录结构目录含义文件权限文件权限类型文件其余信息目录结构学习 Linux,最基础的就是要了解整个Linux 文件系统的目录结构以及各个目录的功能,这对Linux 学习来说至关重要,使用 Linux 通过 ls -l / 就可以看到根目录下的子目录,每个目录下的文件都有其特殊的含义,常见目录结构如下。目录含义目录名含义/bin/bin 目录存放着最经常使用的命/boot这里存放的是启动 Linux 时使用的一些核心文件/dev目录下存放的是 Linux

2020-12-07 23:49:25 379

原创 Vim 编辑器快捷键及配置指南

文章目录1.Vim 常见工作模式2.Vim 的模式转换命令模式转输入模式3.Vim 高频快捷键插入文本 ( 默认模式下输入 )行间跳转 ( 默认模式下输入)文本处理 ( 默认模式下输入)文件操作 ( 编辑模式下输入)批量处理 ( 编辑模式下输入 )4.Vim 配置文件配置指南1.Vim 常见工作模式 命令模式 :Vim 打开文件默认处于命令模式。此模式下,可使用方向键(上、下、左、右键)或 k、j、h、i 移动光标的位置,还可以对文件内容进行复制、粘贴、替换、删除等操作。输入模式(插入模式) :

2020-12-06 17:43:33 828

原创 Linux常用命令及选项

????  文件基本操作命令命令功能ls列出非目录的文件项 ,或列出指定目录下的文件pwd显示出当前目录的名称cd改变工作目录mkdir建立目录touch创建一个空文件,改变文件时间戳mv移动 (改名) 文件cp复制文件和目录find  (极其强大)递归地在指定目录中查找文件1. ls格式: ls   [  选项  ]   [ &nb

2020-12-06 14:52:43 1007

原创 模拟实现strcpy,strcmpy等字符串操作函数

模拟实现常见字符串操作函数 1. strcpy函数名说明函数原型char *strcpy(char* dest, const char *src)参数说明dest 为指向用于存储复制内容的目标数组,src 为要复制的字符串头文件stdio.h描述把 src 所指向的字符串复制到 dest。返回值该函数返回一个指向最终的目标字符串 dest 的指针注意如果目标数组 dest 不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况模

2020-12-02 23:47:12 316

原创 数据结构 | 通用数据类型双向链表(C语言)

目录前言设计思路代码展示测试环节前言熟悉C++的STL(标准模板库)的人都知道list底层是一个双向链表,支持通用类型数据的存储,使用起来非常方便,但对于C语言开发者来说,并没有这么方便的工具,所以在这里记录一下自己实现的通用数据类型双向链表,提供了一些常见的API,并分享一些常见的代码规范。设计思路这里我们不便过多地讨论双向链表的实现过程,我们重点看如何解决下面几个问题1. 如何解决通用类型的数据存储2. 如何保证代码的严谨性,健壮性3. 如何实现数据结构的高复用,低耦合1.通过

2020-11-22 22:18:24 1097 1

原创 CMake基础入门教程 (一)

CMake作为一款跨平台编译工具,很好解决了不同平台编译标准不一致的问题,学习CMake的意义就在于,它可以让开发者编写一种与平台无关的CMake配置件来定制整个编译流程,使开发者不需要考虑各平台互不兼容的问题。前言在每个需要编译的目录下都要有一个CMakeLists.txt配置文件以便CMake执行CMake语法中不区分大小写,语法注释使用 #CMake语法有点像Shell,都是通过 ${变量名} 取变量值从一个最简单的例子认识它一个最基本的 CMakeLists.txt 应该是这样.

2020-11-22 17:50:29 811

原创 关于VS2013函数scanf使用不安全的问题

关于vs2013等编译器scanf函数不能使用的问题第一次在vs2013里使用scanf的同学可能经常会遇到这样的报错:error C4996: ‘scanf’: This function or variable may be unsafe.那我们可以直接屏蔽掉这条错误,直接在源文件代码前加上:#define _CRT_SECURE_NO_WARNINGS 1然后就不会出现原来的错误了。那又有同学会问:“难道我每一次都要打上这样一句话?“,好麻烦呀!当然不用,如果你要想每一次创建源文

2020-11-19 21:45:54 241

原创 IP数据包的路由转发

IP路由器是连接多个IP网络的设备,其主要的工作就是为经过IP路由器的每个IP数据包寻找一条最佳传输路径。路由表就是记录了各种传输路径的数据的一张表,分为静态路由表和动态路由表。静态路由表是事先固定好的路由表,不会随着网络结构的改变而改变。动态路由表一定的路由选择算法自动调整的路由表。IP数据包转发过程:IP数据包根据ARP缓存中查看是不是有目的主机的MAC...

2019-11-11 14:45:48 4032

原创 由浅入深剖析—智能指针

1.为什么出现智能指针?智能指针的出现是为了解决,由于异常出现而导致申请的空间没有释放,而出现的内存泄漏的问题。智能指针其针对的情况如下代码当我们除数输入0时,系统就会抛异常中断程序,但是我们的p指针还没有被释放,程序却终止了,导致了内存泄漏,这是十分危险的。void Div(double a, double b){ if (b == 0) { invalid_argu...

2019-08-09 17:50:17 217

原创 C语言贪吃蛇(详解)——链表实现

贪吃蛇设计思路:屏幕坐标:拓展功能:1.F1,F2控制加速减速 空格暂停游戏 Esc退出2.加速每个食物得分更高先打印出游戏界面,还有初始化蛇,蛇的节点用字符串★表示,游戏背景用■表示,因为这些字符串占两个字节的宽度,所以每次x,y坐标的对应关系是x=y*2。在相应位置打印出蛇,初始化蛇为五个节点初始化蛇头的移动方向为右,根据按键来确定蛇的移动状态,要是吃到食物,就让食物为蛇头,然后随机生成食...

2018-05-26 16:35:43 43576 61

原创 头文件windows.h和宏定义而引发的错误

先看下面一段代码:#define _CRT_SECURE_NO_WARNINGS 1#define N 6#include<stdio.h>#include<Windows.h>int main(){ printf("%d \n", N); system("pause"); return 0;}这段代码一般人觉得对很正常,%90的人都会觉得没错,但是...

2018-04-03 22:58:10 3151

原创 深入探讨函数的栈空间

虽然我们在C语言里面学习了函数,但是只停留在表面,要想了解函数的调用过程,我们必须了解一个概念叫做栈帧, 每一次函数调用必须向内存开辟栈空间,用于本次函数临时变量的保存,现场保护,这块栈空间我们叫做函数栈帧在了解函数栈帧前我们必须了解以下几个知识点: 1.每一个函数有着自己的栈帧,随着调用结束而销毁。 2.内存中有各种各样的寄存器,其中ebp是栈底寄存器,指

2017-12-25 21:34:10 672

原创 C语言实现扫雷——详解

扫雷大家应该都玩过,这是一个十分经典的游戏,今天我将给大家讲解如何用C语言多文件编程实现扫雷,我的这个扫雷有如下几个功能:显示该点周围雷的个数第一次下子,不炸死坐标周围没雷,可以实现展开游戏结束后展示玩家用时话不多说,先附上效果图:我们只要输入坐标就可以扫雷了,是不是很有趣?其实要想实现这也不难,我们要用几个算法模块来模拟游戏规则,需要用函数来调用...

2017-12-07 23:08:22 72375 33

原创 一文搞定指针与数组的运算

数组运算讲解:基本每个同学接触到数组时都觉得它很简单,其实你还没有深入了解它,那么下面我将用例题讲解的方式带你深入数组,在讲解之前你必须了解以下知识点:若有数组arr[]={1,2,3,4};sizeof(arr)里面的数组名代表整个数组,换句话说就是当数组名单独出现在sizeof()中时,数组名只表示整个数组,&arr,这里的数组名也代表整个数组,除这两种方式的其余形式数组名均代表首元素地址。

2017-11-30 15:17:08 971 2

原创 你必须掌握的C语言运算符都在这

分类1.算术操作符2.移位操作符3.位操作符4.赋值操作符5.单目操作符解引用操作符:(类型)强制转换6.关系操作符7.逻辑操作符8.条件操作符:9.逗号表达式:10.下表引用,函数调用和结构成员分类1.算术操作符+ - * / %加减法和数学中的一样 , 其中乘除法对于整数的结果是整数,对于浮点数的结果...

2017-11-24 15:12:40 2373 2

C语言双向链表实现词频统计

原创C语言实现词频统计,使用通用数据类型的双向链表进行缓存,自动拆分单词,,可通过命令行一次性读取多个文本,分别输出统计结果,简单实用。

2020-11-28

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

TA关注的人

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