自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

imJaron的博客

锲而舍之, 朽木不折; 锲而不舍, 金石可镂

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

转载 详解KMP算法

KMP算法应该是每一本《数据结构》书都会讲的,算是知名度最高的算法之一了,但很可惜,我大二那年压根就没看懂过~~~之后也在很多地方也都经常看到讲解KMP算法的文章,看久了好像也知道是怎么一回事,但总感觉有些地方自己还是没有完全懂明白。这两天花了点时间总结一下,有点小体会,我希望可以通过我自己的语言来把这个算法的一些细节梳理清楚,也算是考验一下自己有真正理解这个算法。 什么是

2017-12-26 17:39:31 162

原创 Class** 转换成 const Class**的问题

{// Test Class** to const Class**const int x = 100;int* pi;int** ppi = πconst int* cpi = &x;const int** cppi = &cpi;// cppi = ppi;// cannot convert from 'int **' to 'const int **'

2017-12-21 18:06:46 405

原创 二分查找(对半查找)的实现

namespace Data{       int iArray[] = { 3, 8, 1, 6, 2, 5, 4, 9, 7 };       int iArray1[] = { 2,2,18,9,1,3,2,0,19,20,15,6,12 };       int iArray2[] = { 2,1,1,2 };       vectorint>iVector = { 3

2017-12-20 16:41:07 1032

原创 快速排序的实现

直接上代码,里面有一个注意点就是当从右向左的时候(假设是按升序来排序),对于跟基准值相等的元素一定要进行处理,而不是跳过。或者从左向右的时候,对于跟基准值相等的一定要跳过,否则容易进入死循环,或者对有重复数字的数据中间过程有“假”快速排序的情况(比如2 2 9 1 2 3, 第一次循环很可能就变成了2 2 1 9 2 3,虽然最终结果是对的,但是这一步并没有把数据按照基准值进行划分)。

2017-12-18 15:20:01 229

转载 以操作系统的角度述说线程与进程

什么是线程  什么是线程?线程与进程有什么关系?这是一个非常抽象的问题,也是一个特别广的话题,涉及到非常多的知识。我不能确保能把它讲得好,也不能确保讲的内容全部都正确。即使这样,我也希望尽可能地把它讲通俗一点,讲得明白一点,因为这是个一直困扰我很久的,扑朔迷离的知识领域,希望通过我的理解揭开它一层一层神秘的面纱。  任务调度  线程是什么?要理解这个概念,需要先了解一下操作

2017-12-18 14:25:46 197

转载 CloseHandle()函数的使用

很多程序在创建线程都这样写的:............ThreadHandle = CreateThread(NULL,0,.....);CloseHandel(ThreadHandle );。。。。。这不是刚好创建又关闭了吗?线程怎么运行呢?================================================Closing a th

2017-12-15 14:29:55 16613

转载 宏定义 #和 ##运算符的区别

#运算符将一个宏的参数转换为字符串字面量。它仅允许出现在带参数的宏的替换列表中。(一些C程序员将#操作理解为“stringization(字符串化)”;其他人则认为这实在是对英语的滥用。)#运算符有大量的用途,这里只来讨论其中的一种。假设我们决定在调试过程中使用PRINT_INT宏作为一个便捷的方法,来输出一个整型变量或表达式的值。#运算符可以使PRINT_INT为每个输出的值添加标签。下面是改进

2017-12-15 13:50:37 519

转载 C++11的新功能特性对Boost库影响

Boost程序库探秘——深度解析C++准标准库》之试读        前一阵子还看到一篇文章,说C#要重蹈C++的覆辙,这里说的C++的覆辙是什么呢?是指C++语言过于臃肿的功能特性,导致学习人员的流失。文章说,语言最后的威力是“开发软件”,而不是“比拼新特性”       在大学中,C++算是比较难学的语言。有些学校试图直接让学生们学习C++,结果效果不怎么好。这次,C++11又

2017-12-15 13:34:57 287

原创 Visual Studio 2017 Boost配置

1. 首先下载一个Boost库,官网地址,下载好后解压到一个目录。2. 打卡VS2017的命令行窗口,进入到Boost库的目录,3. 运行bootstrap.bat,成功后会生成bjam.exe和b2.exe。4. 运行b2.exe,需要一段时间,运行结束后显示如下。5. 完成后在需要使用的project里修改相关属性

2017-12-15 13:32:30 2449

原创 string转化成int

上一篇列举了把int转成string的方法,这篇列举把string如何转成int,以及除了调用已有的API,如何自己写方法来进行转换。#include "stdafx.h"#include  using namespace std; #define CALL(namespace, method) \{\       cout "Calling " #n

2017-12-15 13:01:03 818

原创 int转化成string

本文总结了几种把int转化成string的方法,为了方便,一些说明都放在了代码注释里,所以直接上代码。#include "stdafx.h"#include  using namespace std; #define CALL(namespace, method) \{\       cout "Calling " #namespace"::" #

2017-12-15 12:18:14 978

原创 软件调试笔记71 - WinDBG用法详解 :调试函数

2017-12-14 12:51:09 311

原创 软件调试笔记70 - WinDBG用法详解 :遍历链表

2017-12-14 12:48:02 550

原创 软件调试笔记69 - WinDBG用法详解 :观察内存

2017-12-14 12:42:57 230

原创 软件调试笔记68 - WinDBG用法详解 :观察栈

2017-12-14 12:41:28 202

原创 软件调试笔记67 - WinDBG用法详解 :控制进程和线程

2017-12-14 12:37:57 393

原创 软件调试笔记66 - WinDBG用法详解 :使用断点

2017-12-14 12:33:07 405

原创 软件调试笔记65 - WinDBG用法详解 :单步执行

2017-12-14 12:25:06 776

原创 软件调试笔记64 - WinDBG用法详解 :事件处理

2017-12-14 12:16:37 328

原创 软件调试笔记63 - WinDBG用法详解 :上下文

2017-12-14 12:07:57 213

原创 软件调试笔记62 - WinDBG用法详解 :输入和执行命令

2017-12-14 12:05:15 355

原创 软件调试笔记61 - WinDBG用法详解 :命令概览

标准命令:

2017-12-14 12:00:37 238

原创 软件调试笔记60 - 可调试性概览 :不可调试代码

2017-12-14 11:01:32 248

原创 软件调试笔记59 - 可调试性概览 :基本原则

通常一个软件的BETA版本已经包含了所有功能的实现。此后最核心的问题就是发现和修正错误,甚至有人把BETA开始到发布的这段时间叫做调试阶段。基本原则:

2017-12-14 10:58:21 273

原创 软件调试笔记58 - 调试符号 : PDB文件中的数据表

2017-12-13 16:06:01 312

原创 软件调试笔记57 - 调试符号 : 编译和链接选项

2017-12-13 16:02:58 291

原创 软件调试笔记56 - 调试符号 : PDB文件

2017-12-13 15:59:55 248

原创 软件调试笔记55 - 调试符号 : DBG文件

2017-12-13 15:56:01 759

原创 软件调试笔记54 - 调试符号 : PE文件中的调试信息

2017-12-13 15:50:57 928 1

原创 软件调试笔记53 - 调试符号 : 目标文件中的调试信息

2017-12-13 15:28:34 205

原创 软件调试笔记52 - 调试符号 : 调试信息的存储格式

2017-12-13 15:24:26 180

原创 软件调试笔记51 - 调试符号 : 名称修饰

2017-12-13 15:19:39 272

原创 软件调试笔记50 - 调试符号 : 简介

在软件调试中,调试符号是将被调试程序的二进制信息和源程序信息联系起来的桥梁,可以用作源代码级的条好似、栈回溯、按名称显示变量等。从软件编译的角度看,调试符号是编译器在将源文件编译为可执行程序的过程中,为支持调试而摘录的调试信息。这些信息以表格的形式记录在符号表中,是对源程序的概括。调试信息描述的主要目标有变量、类型、函数、符号和源代码行等。调试信息是在编译过程中逐步收集和提炼出来的,最

2017-12-13 15:14:45 1545

原创 软件调试笔记49 - 异常处理代码的编译

2017-12-13 14:00:08 164

原创 软件调试笔记48 - 堆和堆检查 :堆常用调试功能

2017-12-12 18:16:18 271

原创 软件调试笔记47 - 堆和堆检查 :泄漏转储

何时调用:定位导致泄漏的源代码:

2017-12-12 18:13:31 136

原创 软件调试笔记46 - 堆和堆检查 :CRT堆

CRT堆的三种方式:SBH堆:CRT堆的调试堆块:CRT堆的调试功能:

2017-12-12 17:58:56 410

原创 软件调试笔记45 - 堆和堆检查 :页堆,准页堆

简介:总体结构:准页堆:结构布局:检测溢出:

2017-12-12 16:50:12 647

转载 神器PEview 妈妈再也不用担心我看dll和lib等库文件了

Step1:下载神器PEView0.99,评论后可以补回一个资源分;http://download.csdn.net/detail/ericwuhk/6862799Step2:打开压缩包;Step3:打开你想内窥的文件,如lib、dll格式的;Step4:本人亲测dll 和lib格式可以完全暴露,看图

2017-12-08 15:30:56 570

转载 常用性能分析工具

录top列含义vmstatprocsmemoryswapiosystemcpuuptimefreeiostatcpuDevicesarmpstatpmapnetstattcpdumpstracelsofproc文件系统

2017-12-08 15:29:27 771

空空如也

空空如也

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

TA关注的人

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