自定义博客皮肤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)
  • 收藏
  • 关注

原创 git—代码提交

git pull origin master git status 检测代码变动状态 git add. 已跟踪文件提交至暂存区(不包含已删除文件) git status 验证是否提交成功 git commit -m “event-descriable” 提交暂存区中文件至本地版本库,并增加描述 git log 日志查看 git push 将本地版本库的分支推送至远程服务器上对应分支 git push --set -upstream origin master 更改用户名 git config --globa

2020-09-25 19:49:41 264

转载 postman—接口测试

postman的使用教程

2020-09-25 19:19:13 256

原创 懒加载和预加载

即长网页中图片加载方式 懒加载:图片统一替换为1*1px大小的占位图,延迟至符合某条件时取真正路径加载 预加载:提前将所有图片资源加载至本地,需要时直接从本地缓存获取渲染 Lazyload的三种实现方法 详解:懒加载和预加载 ...

2020-09-24 20:03:57 257

原创 fiddler——安装配置常见问题

正常导出的证书无效 正常安装证书方法 PC端:打开Fiddler,点击“Tools–Fiddler Options–HTTPS”,导出证书后将其添加至浏览器 手机端:Fiddler中点击“Tools–Fiddler Options–connections”进行设置,手机端浏览器输入http://本机IP:8888也需要下载安装证书,具体配置可参考https://blog.youkuaiyun.com/ychgyyn/article/details/82154433 2. 上述方法安装后仍无法抓取https,则需.

2020-06-10 13:48:31 890

原创 pyhton学习——WSGI接口

WSGI 即Web服务器网关接口,定义了Web服务器如何与Python应用程序进行交互的接口规范。 主要作用: 连接web应用与服务器端OS模块,明确分工,解耦操作。 具体实现: 用户通过浏览器访问网页过程解析: 以django分析WSGI 当前运行在WSGI协议之上的web框架有Bottle, Flask, Django ...

2020-04-10 09:42:21 206

原创 jmeter学习——通过JDBC操作数据库

JDBC(Java DataBase Connectivity,java数据库连接): 一种用于执行SQL语句的Java API,由一组用Java语言编写的类和接口组成; 为多种关系数据库提供统一访问,使程序员对数据库的访问操作更加简便。 JDBC操作数据库的基本步骤: 加载(注册)数据库驱动(到JVM) 建立(获取)数据库连接 创建(获取)数据库操作对象 定义操作的SQL语句 执行数据库操...

2019-12-08 20:55:05 326

原创 Python学习——正则表达式

正则表达式 字符串匹配的模板(普通字符+特殊字符),进而提取、删除、替换匹配的字串。 字符分类 普通字符 大小写字母,数字,标点符号等 非打印字符(转义字符): 特殊字符:匹配特殊字符时需要通过‘\’进行转义,否则按其描述处理 限定字符:对子表达式匹配次数进行限定/指定 //限定 coo+l: + 号代表前面的字符o必须至少出现一次,即贪婪模式 coo*l: * 号代表字符o可以不出现...

2019-09-22 11:19:36 279

原创 python学习——CSV模块

CSV文件 def csv_write(fileName): with open(fileName, 'w+', newline='') as fp: #以元组/列表形式写入CSV文件 info1 = ('name', 'age') info2 = ('lily', 23) info3 = ['rose', 21] ...

2019-09-05 09:15:04 254

原创 jmeter学习——jmeter参数化

- 用户参数 添加“用户参数” 添加参数信息:“名称”即变量名;“用户”即变量值,可对应多个;“每次迭代更新一次”即依据线程组设置的循环次数每次对变量迭代新的变量值 将设置的参数名称以${参数名}格式写入:可以在响应断言/HTTP请求的路径/发送数据等处使用 CSV Data 提取 添加“CSV数据文件设置” 设置相关信息: Filename:参数文件名,即参数化要引用的文件名,一般以...

2019-08-29 15:51:28 636

原创 Python学习——生成器和迭代器

- 迭代器 一个可以记住遍历的位置的对象,从集合的第一个元素开始单向访问,直到所有的元素被访问完结束。 # 两个基本的方法: iter() #创建迭代器对象 next() #返回下一个迭代器对象;Python3的for循环本质上就是通过不断调用next()函数实现的 # 迭代完成标识:通过抛出StopIteration异常来结束 it = iter(mycla...

2019-08-26 22:23:46 196

原创 Python学习——class/type/instance/object

type-类型 与 class-类 type-类型 class-类 Python2.0 内建的类通常叫做type 用户自定义的类,通常叫做class Python3.0 二者不作区别 二者不作区别 instance-实例 与 object-对象 类的实例就是对象, 即实例就是对象的一个别称。 class-类 与 instance-实例/object-对象 class-类到...

2019-08-25 11:53:59 363

原创 Python学习——f-string格式化字符串

格式化字符串 将Python表达式嵌入到字符串文本中进行格式化 %-formatting 缺点:传入多个参数时会造成代码冗长,不易读 #替换字段用%s标记 s1 = 'hello' s2 = "2019" student = {'name': 'tom', 'age': 18} str1 = '%s, word!' % s1 #hello, word! str2 = "%s, word...

2019-08-25 11:34:34 254

原创 Python学习——Excel读写模块(xlwt/xlrd)

xlwt/xlrd模块 读写Excel的扩展工具 xlwt模块 xls文件write库,只能写,可以实现指定表单、指定单元格的写入 xlrd模块 xls文件read库,只能读,可以实现指定表单、指定单元格的读取 1. xlwt模块 创建/保存xls文件对象data: data = xlwt.Workbook(encoding = 'ascii') #encoding参...

2019-08-21 23:04:55 563 1

原创 python学习——pandas库:数据统计分析处理

Pandas 库的导入: #导入pandas库,同时指定别名为pd import pandas as pd Pandas 中的数据类型: Series Dataframe 一维 二维的、表格型 每个元素都有各自的标签(标签可以是数字或者字符) 可以储存许多不同类型的数据,并且每个轴都有标签 可以把它当作一个由带标签的元素组成的 numpy 数组 可以把它当作一个 seri...

2019-08-19 23:25:22 1327

原创 git学习——git分支管理

git-flow主要有5中分支:master、hotfix、release、develop、feature 一. 分支命名 分支命名 作用 master分支 主分支,也是用于部署生产环境的分支,确保master分支稳定性 release分支 预上线分支,发布提测阶段,会release分支代码为基准提测 dev分支 开发分支,始终保持最新完成以及bug修复后的代码 fea...

2019-08-17 20:49:27 505

原创 C++ I/O操作与I/O异常

C++ I/O操作 C++ I/O异常

2018-11-11 23:00:21 804

原创 STL——顺序容器、配置

STL “容器”和算法的集合(标准模板库)。 组成部分:容器、迭代器、空间配置器、配接器、算法、仿函数。 一、容器 向量(vector) 连续存储的元素 列表(list) 由节点组成的双向链表,每个结点包含着一个元素 双队列(deque) 连续存储的指向不同元素的指针所组成的数组 集合(set) 由节点组成的红黑树,每个节点都包含着一个元素,节点之间以某种作用于元素对的谓词排列,没有两个不同的元素...

2018-11-05 21:06:41 255

原创 智能指针

一、智能指针 C++98最早提供的智能指针: auto_ptr Boost 提供的智能指针: scope_ptr/scope_array unique_ptr shared_ptr weak_ptr 下面,我分别针对上述提及指针一一说明。 1、auto_ptr: 自动管理由new动态分配的单个对象,其管理对象的生命周期结束时会调用delete自动释放。 //相关操作: auto_ptr<in...

2018-11-02 12:01:37 201

原创 TCP/IP协议

一、TCP/IP协议族 TCP/IP协议族是一个四层协议系统,其结构及主要协议如下图: 注:其中的应用层、传输层、网络层与数据链路层不仅仅只代表ISO-OSI的七层协议经典架构其中的四层,而是将其中的部分相邻层合并作一层。 应用层 | 表示层 |----------------------- 应用层(用户空间中实现) 会话层 | ——— | 传输层 |---------------------...

2018-10-31 21:39:37 257

原创 深入理解关键字:const、static

const 对于const关键字,我们习惯性的将它直接看作常量,但当你编译下面代码时,会发现与我们之前的理解有所偏差: const int SIZE; int arr[SIZE]; //.c 不能通过 //.cpp 顺利运行 在定义数组时,必须指定数组元素个数为常量,但在C中却不能通过,以此可以推翻const修饰的值是常量。参考《C语言深度剖析》,可以将const修饰的值看作readonly属...

2018-10-31 19:04:01 393

原创 C/C++区别

C/C++区别: 内联函数、引用、const、动态内存分配、参数带默认值、函数重载 内存布局/内存模型 程序运行后的内存布局

2018-10-11 21:05:35 209

原创 排序(三):归并排序、基数排序

一、排序分析: 7、归并排序 时间复杂度:O(nlog2^n) 空间复杂度:O(n) 算法稳定性:稳定 //1、申请新数组,用来保存排序结果 //2、初始start/end1/start2/end2 //3、归并排序: // 有两个归并段时,start1与start2元素进行比较 // 小于等于,保存start1值同时后移; // 大于,保存start2值...

2018-07-21 18:11:47 729

原创 Linux下main函数的参数、fork函数

1、Linux下main函数的参数: (1)argc:命令行参数的个数(包括最开始的可执行文件名称) (2)argv:字符指针的数组,每个元素都是一个指向字符串的字符指针,,即命令行中的每一个参数; 命令行参数的列表,数组长度对应argc (3)envp:字符指针的数组,每一个元素是指向一个环境变量的字符指针 字符数组的最后一个元素均为NULL指针 命令行参数:在命令行调用程序时传递的...

2018-07-03 14:20:45 4775

原创 排序(二):快速排序、堆排序

一、排序分析: 5、快速排序 时间复杂度:O(nlog2n)–有序–>O(n^2) 空间复杂度:O(log2n) 算法稳定性:不稳定 //快速排序(分区、递归操作):固定位置选取基准法low、随机选取(有序数据的优化)、三分选取 //优化: 1、直接插入(少于100各元素) 2、聚集基准位置法 //取基准(分数据段): //(1)low、hig...

2018-06-27 13:26:50 276

原创 字符串匹配:BF算法,KMP算法

一、BF 算法: 即朴素匹配(暴力匹配) 主要思想: 从指定pos位置开始匹配,主串指针i初始为pos、子串指针j 初始为0; 1、开始匹配:主串、子串分别指向的当前元素进行比较, 相同,则i、j 同时后移一位 不同,则i 会退至开始位置的后一位、j 回退至0(子串首元素); 2、继续开始下一次匹配; 3、结束判断: 当子串j 后移...

2018-06-12 22:21:16 610

原创 排序(一):选择排序、冒泡排序、插入排序、希尔排序

一、各排序分析: 1、选择排序 时间复杂度:O(n^2) 空间复杂度:O(1) 算法稳定性:不稳定(即有跳跃式交换) 2、冒泡排序 时间复杂度:O(n^2) 空间复杂度:O(1) 算法稳定性:稳定 3、插入排序 时间复杂度:O(n^2)—有序—->O(n) 空间复杂度:O(1) 算法稳定性:稳定 ...

2018-06-11 22:09:59 238

原创 头文件与库文件、静态链接与动态链接、静态库与动态库(共享库)

1、头文件在哪里? 头文件:作为一种包含功能函数、数据接口声明的载体文件,主要用于保存函数的声明。C++标准库头文件,不同的编译器默认路径不相同。 Vc6.0:一般在安装目录下的\VC98\INCLUDE目录, 比如C:\Program Files (x86)\Microsoft Visual Studio\VC98\INCLUDE。 Vs:一般在位于$VSPATH\VC\include...

2018-06-06 21:05:08 3494

原创 可执行文件的生成、源文件与目标文件不能直接运行的原因、

1、main.o不能直接运行的原因: 源代码文件(.c)—> 预编译(.i)—>编译(.s)—>汇编(.o), 经过这个过程生成.obj(.o)目标文件,即文件通过预处理后进行一系列的词法分析、语义分析、语法分析及优化后生成相应的汇编代码文件,继而由汇编器将汇编代码转变成机器可以执行的指令得到目标文件。一个源文件生成一个目标代码,因此目标文件也可视...

2018-06-06 20:55:01 3721

转载 两个栈实现一个队列

两个栈实现一个队列

2018-06-05 20:10:25 185

原创 朴素匹配(my_strstr函数实现:strncmp/strchr)

朴素匹配(my_strstr函数实现:strncmp/strchr)

2018-04-22 21:20:20 397

原创 位操作应用示例

位操作

2018-04-22 21:15:25 290

原创 内存对齐问题

内存对齐要点: 1、整体按最大基本类型对齐; 2、每个变量字段需满足其首地址能被其类型大小整除。 struct/union/enum/位段/#pragma pack 自定义内存对齐方式的具体特性

2018-04-22 20:27:24 321

原创 内存重叠问题

一、 在内存拷贝时候, strcpy/strncpy/strcat/strncat/memcpy(not ensure!!) 均不允许内存重叠的。 二、 出现内存重叠问题的条件: (1)src 在 des 的左边; (2)src + size_t count > des至字符串结束剩余长度。 解决方法:从后至前进行拷贝(src 与 des 同时 count-1) 三、memmove

2018-04-19 11:23:58 1369 1

原创 a++和++a的压栈的区别

a++和++a的压栈的区别

2018-04-13 00:36:08 377

原创 可变参函数(my_printf可变参函数的实现)

可变参函数 my_printf可变参函数的实现

2018-04-11 19:45:15 822

原创 选择结构:switch...case与if...else

选择结构: 一、switch…case 语句(跳转表、直通性) 二、if...else语句

2018-04-01 15:49:12 1915

原创 动态内存分配函数

一、静态存储分配与动态存储分配: 二、动态内存分配函数 malloc calloc realloc free new delete

2018-03-28 21:43:28 4216

转载 C语言文件操作函数

一、从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。 二、C语言文件操作函数

2018-03-27 23:54:39 356

原创 读书笔记——程序员的自我修养

二、静态链接 1、过程 (1)预处理(预编译).i: 处理源代码中“#”开始的预编译指令,如展开所有宏定义; 保留所有#pragma; 删除所有注释; 添加行号和文件名标识 (2)编译.s: 词法分析、语义分析、语法分析、优化后产生相应的汇编代码文件 (3)汇编.o: 将汇编代码转变成机器可以执行的指令,每一个汇编语句几乎都对应一条机器指令;生成目标文件 (4)链接.e: ...

2018-03-25 23:30:22 439

原创 读书笔记——C语言深度剖析

一、关键字 变量(遵循变量命名规则) auto(声明自动变量,缺省时编译器默认):定义域与生存周期均在语句块内、 static(声明静态变量):类似全局变量,区别于仅属于拥有它的函数,作用域为定义处至文件结尾,使用范围为定义的函数体内,则可用于记录某函数被调用次数,i=10 j=1、 const(声明只读变量):定义同时需初始化,编译时确定其值、 con...

2018-03-24 09:10:15 444

空空如也

空空如也

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

TA关注的人

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