自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (5)
  • 收藏
  • 关注

原创 TCP三次握手与四次握手

三次握手建立连接第一次握手:客户通过调用connect进行主动打开(active open)。这引起客户TCP发送一个SYN(表示同步)分节(SYN=J),它告诉服务器客户将在连接中发送到数据的初始序列号。并进入SYN_SEND状态,等待服务器的确认。第二次握手:服务器必须确认客户的SYN,同时自己也得发送一个SYN分节,它含有服务器将在同一连接中发送的数据的初始序列号。服务器

2013-05-23 10:47:00 444

原创 链表基础

链表基础 #includeusing namespace std;class Node{public: int data;public: Node* next; Node() { data=0; next=NULL; }};int main(){ Node* pHead; Node* pRear; Node* pNe

2013-05-22 19:16:11 355

原创 代码优化的各种排序算法

直接插入排序第一层循环从i=1开始,因为插入算法中把数组的第一个元素a[0]作为第一个有序的数组,每次的插入都是基于这个数组。第二层循环开始对数组内的元素开始比较,例如当i=4时,j=3,此时数组为{2,3,6,1,5},我们需要把元素1插入到有序列{2,3,6}中,第一次循环将元素1与6互换,直到j>=0 并且 a[j]>a[j+1],跳出循环。#includeusin

2013-05-21 14:59:27 399

原创 线程和进程

进程是资源管理的最小单位,线程是程序执行的最小单位。在操作系统设计上,从进程演化出线程,最主要的目的就是更好的减小(进程/线程)上下文切换开销。       无论按照怎样的分法,一个进程至少需要一个线程作为它的指令执行体,进程管理着资源(比如cpu、内存、文件等等),而将线程分配到某个cpu上执行。一个进程当然可以拥有多个线程,此时,如果进程运行在SMP机器上,它就可以同时使用多个cpu来执行

2013-05-04 13:35:31 370

原创 C/C++中的__FILE__, __LINE__,#line

一、__FILE__用以指示本行语句所在源文件的文件名  #include using namespace std; int main() { cout<<__FILE__<<endl; return 0; }        输出:D:\project\aa\main.cpp         二、__LINE__用以指示本行语句在源文件

2013-04-24 15:33:05 1162

转载 MySQL 索引浅析

在数据库表中,使用索引可以大大提高查询速度。  假如我们创建了一个 testIndex 表:  CREATE TABLE testIndex(i_testID INT NOT NULL,vc_Name VARCHAR(16) NOT NULL);  我们随机向里面插入了 1000 条记录,其中有一条 i_testID vc_Name 555 erquan  在查找 vc_Nam

2013-04-24 12:56:14 375

转载 C++ 虚函数表解析

原文地址:http://blog.csdn.net/haoel/article/details/1948051/C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTT

2013-04-23 20:28:13 338

转载 C++内存分配的五种方法的区别

在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。   栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。   堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统

2013-04-23 20:05:02 346

转载 C++内存管理详解

1、内存分配方式  内存分配方式有三种:  (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。  (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。  (3

2013-04-23 18:33:06 319

转载 C++中的虚函数的作用

虚函数联系到多态,多态联系到继承。所以本文中都是在继承层次上做文章。没了继承,什么都没得谈。下面是对C++的虚函数这玩意儿的理解。一 、 什么是虚函数简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用

2013-04-22 20:30:56 550

转载 C/C++指针用法最终大总结篇

指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*ptr; (2)char*ptr; (3)int**ptr; (4)int(*ptr)[

2013-04-22 14:30:59 620

原创 Mysql存储引擎类型

1.引擎类型MySQL常用的存储引擎为MyISAM、InnoDB、MEMORY、MERGE,其中InnoDB提供事务安全表,其他存储引擎都是非事务安全表。 2.引擎简介      MyISAM是MySQL的默认存储引擎。MyISAM不支持事务、也不支持外键,但其访问速度快,对事务完整性没有要求。        InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是比

2013-04-16 20:10:40 620

转载 sizeof 与 strlen

Sizeof与Strlen的区别与联系一、sizeof    sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof

2013-04-16 19:33:11 310

原创 后台文本编辑器CkEditor

在开发一个网站后台时,发现当管理员需要编辑一些内容的时候,使用textbox过于单调了,无法添加表格,设置图片等。如果可以像CSDN发帖这种编辑框就好了,偶然发现了CKeditor这个js插件,感觉好强大。在这里记录一下PHP中使用CKeditor这个插件的方法。      首先下载Ckeditor,如果需要上传文件的功能还需要另一个插件Ckfinder,finder放在editor文件夹中,

2013-04-16 18:38:39 908

空空如也

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

TA关注的人

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