自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

nightfall_Forever

要想保持最初的浪漫,真是不容易

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

原创 对测试的理解

测试定义不是1)软件测试就是证明软件不存在错误的过程。2)软件测试的目的在于证明软件能够正确完成其预订的功能。3)软件测试就是建立一个‘软件做了其应该做的’信心的过程。真正的定义是:软件测试时为发现错误而执行程序的过程。测试是为了证明程序有错,而不是证明程序无错误; 一个好的测试用例是在于它能发现至今未发现的错误; 一个成功的测试是发现了至今未发现的错误的测试。

2016-09-10 23:51:22 683

原创 排序

直接插入排序个人总结的要点:第一先保证插入的次数,n个数需要插入n-1次。然后每次都要把新插入进来的数和前面已经排好的数进行比较,所以设置了一个while循环。第二,就是要把数插入之前排好的序列当中。如果出了while循环 ,在 i 到 j之间,某个位置(即 i++出来后的值)要插入a[j],所以要往后依次移动,必须从后面往前面移动

2016-09-09 23:11:47 301

原创 简单的二叉树

树的概念树是n(n>=0)个有限个数据的元素集合,形状像一颗倒过来的树。 结点:结点包含数据和指向其它结点的指针。 根节点:树第一个结点称为根节点。 结点的度:结点拥有的子节点个数。 叶节点:没有子节点的节点(度为0)。 父子节点:一个节点father指向另一个节点child,则child为孩子节点,father为父亲结点。 兄弟节点:具有相同父节点的节点互为兄弟节点。 节点的祖先:

2016-09-08 23:55:27 245

原创 智能指针(二)

智能指针存在的问题通过对指针的封装,让类可以像指针一样。这样的智能指针还是存在些问题。之前我们解决了,对象拷贝问题,引入引用技术保存拷贝次数,当拷贝次数为1时,便可以直接释放析构对象。现在存在的新的问题是,之前都是用来管理单个对象,那么如果想管理一个数组呢?因此出现了下面的问题:class AA{public: ~AA() { } void Dispaly()

2016-09-05 22:50:19 235

原创 智能指针(一)

动态内存与智能指针 在C++中,动态内存的管理是通过一对运算符来完成的。new---在动态内存中为对象 分配空间并且返回一个指向该类对象的指针。delete---接受一个动态对象的指针,销毁该对象,并释放与之关联的内存。 动态内存的使用很容易出现问题,因为确保正确的时间释放内存是极其困难的。有时我们会忘记释放内存,导致内存泄漏。 为了更容易(或者说是为了安全)地使用动态内存,我们提

2016-09-04 15:36:08 233

原创 TCP三次握手

三次握手(three times handshake;three-way handshake)所谓的“三次握手”即对每次发送的数据量是怎样跟踪进行协商使数据段的发送和接收同步,根据所接收到的数据量而确定的数据确认数及数据发送、接收完毕后何时撤消联系,并建立虚连接。 为了提供可靠的传送,TCP在发送新的数据之前,以特定的顺序将数据包的序号,并需要这些包传送给目标机之后的确认消息。TCP总是用来发送大

2016-09-02 23:35:28 212

原创 动态联编和静态联编

联编概念联编是指计算机程序自身彼此关联的过程。通常指把一个被调用的函数的代码连接到要运行的程序的过程,实际上就是将一个标识符与一个存储地址联系起来的过程。简单的说就是将带调用程序的函数的代码连接到该程序上。 静态联编静态联编是指联编工作出现在编译链接阶段,又称之为早期联编。这种联编过程是在程序开始运行之前完成的,所以也称之为静态束定。 特点:速度快,灵活性差。 动态联编在编译阶段并不

2016-09-01 13:02:33 725

原创 大小端

大小端模式大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。 小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。 怎样测电脑

2016-08-31 23:34:28 196

原创 地址解析协议ARP

地址解析协议ARP概念我们经常会遇到一个问题,知道一个主机或路由器的IP地址怎样找到它的硬件地址呢?ARP协议就是用来从IP地址解析出在数据链路层使用的硬件地址。 ARP协议要点那么存在一个问题,ip地址只有32位,而硬件地址是48位,二者格式不同因而并不存在简单的映射关系。能够映射是在主机ARP高速缓存中存在一个映射表—这个映射表存在从ip到硬件地址的映射。那么我们可以根据自己的ip地址去

2016-08-29 23:50:25 560

原创 死锁概述

死锁概述 一. 死锁的定义如果一组进程中每一个进程都在等待仅由该组中的其它进程才能引发的事件,那么该组进程是死锁的。 在一组进程发生死锁的情况下,该组死锁进程中的每一个进程都在等待另一个死锁进程占有的资源。也就是说,每个进程等待的事件都是该组其他进程释放所占的资源。但由于该组进程都已无法运行,因此他们谁也不能释放资源,致使没有一个进程能被唤醒。这样这组进程只能无限期的等待下去。 二. 资

2016-08-28 01:28:39 574

原创 指针

指针 一. 指针的概念指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。(而通过解引用可以访问该地址内存里面的数据) 二. 如何理解指针要理解指针就要搞清楚指针的四个方面 1.指针的类型 2.指针指向的类型 3.指针的值及指针所指向的区域 4.指针本身占据的内存区举一个例子说明上面四个方面int (*p)[3]指针类型:int(*)[3]指针指向类型:int

2016-08-23 01:31:58 203

原创 关键字return/void

关键字returnreturn语句用来终止当前正在执行的函数并将控制权返回到调用该函数的地方。return有两种形式: 1).return; 无返回值函数 没有返回值的return语句只能用在返回类型为void的函数中。void类型的函数不要求非得有return语句,在这类函数最后一句会隐式的执行return(最常见的是main函数,这个下面说) 直接上列子说明 voi

2016-08-19 14:11:40 713

原创 理解常量指针和指针常量

之所以会出现常量指针和指针常量都拜一个关键字const所赐,或许可以这么说,是const关键字使得情况变得更加有趣。常量指针如何声明一个常量指针,如下: int const *pa 如何理解呢? 首先看定义,它叫“常量指针”,这四个字前两个是定语用来修饰后面的指针,因此它实际想表达的结果是:他是一个指针 其次更深层次来理解它,在声明int const*pa中它首先是一个定义了指针pa,然后这

2016-08-15 14:56:33 357

原创 shell脚本入门

Shell简介Shell,英文是壳,外壳的意思,至于在计算机中,同样有这样的一层意思,也就是可以将shell看做是计算机系统封装的一层外壳,来供用户使用.(个人理解就是shell相当于沟通内核和外部命令的中间媒介,由于内核和外部命令不能直接沟通,因此有必要存在这样一种媒介)因此,用户可以通过操纵shell也就是输入一系列命令来达到各种需要的目的。Shell的作用是解释执行用户的命令,用户输入⼀条命令

2016-08-09 00:35:29 415

原创 简单的TCP通信

系统调用和应用编程接口在进行tcp通信之前,我们先铺垫一下系统调用和应用编程接口。 操作系统在使用系统调用时将控制权在应用程序和操作系统之间传递。如下图: 当某个应用进程启动系统调用时,控制权就从应用进程传递给系统调用接口。此接口再把控制权传递给计算机操作系统。那么接下来操作系统内部会执行请求的操作。内部一旦执行完成,就把控制权交给系统调用接口,接下来系统调用接口就会把控制权交给应用进程。我们可

2016-08-08 01:53:21 453 4

原创 Linux下实现进度条

Linux下实现进度条能够实现进度条是由于printf是行缓存,遇到’\n’才显示,如果即时刷新显示,需要调用 fflush函数。(C语言中缓冲区的刷新方式是以行缓冲刷新的。也就是说,程序要在输入流中取到一个行结束标志(可以是换行符和EOF)才会显示在输出设备屏幕上。注意,程序结束时,系统会强制刷新缓冲区) 一开始将数组初始化为0,每次循环修改“=*”,然后打印当前的数组,因为0是换行符‘\n’的

2016-07-24 00:00:11 200

原创 Linux环境搭建

Vim使用vi/vim的区别:简单点来说,它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,⽽而且还有⼀一些新的特性在⾥里⾯面。例如语法加亮,可视化操作不仅可以在终端运⾏行,也可以运⾏行于x window、 macos、 windows。 通俗的来就是vim是个编辑器相当于vs2013一样,通过自己对vim配置后,vim可以像vs里面那样在你编辑时自动缩进,括号自动

2016-07-23 00:14:11 252

原创 g++/gdb/ctags/vim的安装

前言在虚拟机上安装以上开发工具仅仅需要在终端底下使用几条简单的命令即可。所以安装前请确保你的虚拟机可以连网,如若不能请查看上一篇博客。一、g++安装在终端底下键入—— yum install gcc gcc-c++(在centos下)如图二、gdb安装先用rpm -qa | grep gdb 查询是否已经安装gdb,一般情况下虚拟机已经默认安装了gdb,我们只需要查询一番即

2016-06-07 12:04:42 350

原创 Centos下虚拟机连网问题

先说说虚拟机的安装由于各种原因虚拟机我来来回回装了好几次,所以在此总结一下我遇到的问题,以及解决的方法。  最开始遇到的问题是安装完VMware Workstation导入镜像文件后提示错误如下进入BIOS里面把disable设置成enable就ok了。其他步骤可以百度,在此不在赘述。虚拟机上网问题我自己的电脑装完虚拟机后不能连接到网络,查了好多资料,总结如下第一种

2016-06-05 23:52:30 348

原创 Find 指令及 a/c/m -time的用法区别

find 指令及 a/c/m -time的用法区别

2016-05-22 23:29:48 4451

空空如也

空空如也

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

TA关注的人

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