自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(166)
  • 收藏
  • 关注

原创 C++封装、继承、多态

面向对象的三个基本特征面向对象的三个基本特征是:封装、继承、多态。其中,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重用!封装                                                                        

2017-10-10 22:49:03 332

原创 HTTP消息头(HTTP headers)-常用的HTTP请求头与响应头

HTTP消息头是指,在超文本传输协议( Hypertext Transfer Protocol ,HTTP)的请求和响应消息中,协议头部分的那些组件。HTTP消息头用来准确描述正在获取的资源、服务器或者客户端的行为,定义了HTTP事务中的具体操作参数。关于HTTP消息头常用的HTTP请求头常用的HTTP响应头 1. 关于HTTP消息头HTTP消息头是在,客户端请求(

2017-10-09 17:10:40 749

原创 VI编辑器之多文件多屏操作

1、如何打开多窗口:(1)不同文件在不同窗口打开打开方法:(1):e filename_path/filename此时可以通过Tab键查找目录下的文件,此时是重新打开选定的文件,前一个打开的文件将被关掉;不退出vi情况下打开另一个文件,一个窗口只显示一个文件。(2):new filename_path/filename打开选定文件,前一个打开的文件不

2017-09-27 22:35:36 536

原创 Linux基本操作命令

Linux基本操作命令  首先介绍一个名词“控制台(console)”,它就是我们通常见到的使用字符操作界面的人机接口,例如dos。我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令,例如dos命令就是控制台命令。我们现在要了解的是基于Linux操作系统的基本控制台命令。有一点一定要注意,和dos命令不同的是,Linux的命令(也包括文件名等等)对大小写是敏感的,也就是说,如果你

2017-09-27 21:58:15 436

原创 进程与线程的区别

学习电脑和编程语言就会遇到进程和线程,初学者往往会在此陷入迷茫和纠结中。其实弄清这两个概念不是很难。从一定意义上讲,进程就是一个应用程序在处理机上的一次执行过程,它是一个动态的概念,而线程是进程中的一部分,进程包含多个线程在运行。方法/步骤进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可

2017-09-27 20:37:44 383

原创 TCP/IP四层模型

TCP/IP参考模型    ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。如图2-1所示,是TCP/IP参考模型和OSI参考模型的对比示意图。            图2-1  TCP/IP参考模型  2.1 TCP/IP参考模型的层次结构  TCP/IP协议栈是美国国防部高级研究计划局计

2017-09-15 14:55:39 355

原创 CSMA/CD和CSMA/CA详解

CSMA/CD   CSMA/CD(Carrier Sense Multiple Access/Collision Detect)   即载波监听多路访问/冲突检测方法   在以太网中,所有的节点共享传输介质。如何保证传输介质有序、高效地为许多节点提供传输服务,就是以太网的介质访问控制协议要解决的问题。   一、基础篇:   是一种争

2017-09-14 15:34:26 2011

原创 IP地址和子网掩码

一、先导知识(一)二进制和十进制数转换(★记住)11111111→128+64+32+16+8+4+2+1=240+15=255举例:10100000→128+32=16010011000→128+16+8=15201000100→64+4=68(二)子网掩码计算(★记住)10000000→12811000000→128+64

2017-09-13 21:50:32 1018

原创 在32位、64位操作系统下各数据类型所占的字节数

在32位、64位系统当中,唯一改变的是指针的长度;在32位系统当中是4个字节、64位则是8个字节。所谓的32位、64位,这个指的是寄存器的位宽。        32位平台下结果:        64位平台下结果: 一、下面几点是值得大家注意的:1、关于 int 的取值范围,缺省的int数值范围是由编译器设计者决定的,通常都是机器最为自

2017-09-12 09:42:19 3251

原创 Linux查看系统状态命令

iostat    iostat 命令详细地显示了存储子系统方面的情况。你通常用iostat来监控存储子系统总体上运行状况如何,并且在用户注意到服务器运行缓慢之前提早发现输入/输出缓慢的问题。相信我,你应该在用户发现这些问题之前先发现这些问题!    meminfo和free    meminfo为你详细显示了内存方面的情况。你通常可以使用另一个程序,比如cat和grep,

2017-09-11 16:27:03 329

原创 Linux Shell脚本编程--变量$#,$@,$*,$?,$0,$1,$2的含义解释

linux中shell变量$#,$@,$0,$1,$2的含义解释:  linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Se

2017-09-11 15:29:32 341

原创 HTTP请求返回状态码详解

当用户试图通过 HTTP 访问一台正在运行 Internet 信息服务 (IIS) 的服务器上的内容时,IIS 返回一个表示该请求的状态的数字代码。状态代码可以指明具体请求是否已成功,还可以揭示请求失败的确切原因。1xx - 信息提示这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。· 100 - Continue 初始的请求已经接受,客

2017-09-10 14:09:23 421

原创 有一个二叉树,现在怀疑它有一个结点有2个父节点,请写出一个函数来判断该二叉树是否存在一个节点含有2个父节点。如果存在,返回true,否则返回false。

[cpp] view plain copystruct Node{  Node *pLeft;  Node *pRight;  int Data;  };    //pTree为要查找的树,pParent为pNode的父结点,pNode为根时pParent 为NULL  //若pTree 中存在具有两个父结点的点返回真,否则返回假  

2017-09-10 00:12:00 538

原创 函数可重入性(Reentrancy)概念详解

1.什么是可重入性重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。可重入的函数必须满足以下三个条件:(1)可以在执行的过程中可以被打断;(2)被打断之后,在该函数一次调用执行完之前,可以再次被调用(或进入,reentered)。(3)再次调用执行完之后,被打断的上次调用可以

2017-09-09 23:18:42 660

原创 文件系统有哪些

FAT在Win 9X下,FAT16支持的分区最大为2GB同FAT16相比FAT32最大的优点是可以支持的磁盘大小达到2TB(2047GB),但是不能支持小于512MB的分区。 基于FAT32的Win 2000可以支持分区最大为32GB,而基于 FAT16的Win 2000支持的分区最大为4GBNTFSNTFS文件系统是一个基于安全性的文件系统,是Windows NT所采用的独特的文件系统结构,它是

2017-09-09 23:06:42 6008

原创 编写类String 的构造函数、析构函数和赋值函数

编写类String 的构造函数、析构函数和赋值函数,已知类String 的原型为:class String{public:String(const char *str = NULL); // 普通构造函数String(const String &other); // 拷贝构造函数~ String(void); // 析构函数String & operate =(cons

2017-09-07 21:46:01 313

原创 总结const的主要作用

说到const在C++中的作用,只要有一定经验的程序员就不会仅仅想到它是用来标识常量。关于const的作用在很多书上都有讲解,在这里说到const可能并没有什么新的东西,只能说是一起来复习一下const。现总结const的主要作用如下(当然,应该还有很多吧):1.      代替#define。讲到用const来代替#define,为什么要这样做呢,当然是const比#define更好啦,

2017-09-07 19:32:59 602

原创 pthread_detach与pthread_join区别

创建一个线程默认的状态是joinable, 如果一个线程结束运行但没有被join,则它的状态类似于进程中的Zombie Process,即还有一部分资源没有被回收(退出状态码),所以创建线程者应该调用pthread_join来等待线程运行结束,并可得到线程的退出代码,回收其资源(类似于wait,waitpid)   但是调用pthread_join(pthread_id)后,如果该线程

2017-09-05 15:27:51 269

原创 数据库范式(1NF 2NF 3NF BCNF)

范式判断流程图1.       四种范式之间关系        2.       第二范式、第三范式、BCNF区别:2NF:非主键列和主键列之间,是完全依赖于主键,还是依赖于主键的一部分(只依赖某个主键);3NF:非主键列之间,不存在依赖,只直接依赖主键。BCNF:主键列之间,不存在依赖。一般关系数据库都满足第

2017-09-03 14:13:10 460

原创 希尔排序

希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。快速导航关系表中文名希尔排序别 名缩小增量排序算法种类排序算法

2017-08-27 16:19:40 264

原创 数据库的几种连接查询

1:连接查询  通过连接运算符可以实现多个表查询。连接是关系数据库模型的主要特点,也是它区别于其它类型 数据库管理系统的一个标志。  在关系数据库管理系统中,表建立时各数据之间的关系不必确定,常把一个实体的所有信息存放在 一个表中。当检索数据时,通过连接操作查询出存放在多个表中的不同实体的信息。连接操作给用户带 来很大的灵活性,他们可以在任何时候增加新的数据类型。为不同实体创建新的表,

2017-08-22 12:21:10 2786

原创 java为什么不支持多继承

类定义属性和方法 描述某一类事物的抽象 而接口定义的是行为 并不限于任何具体意向 按照逻辑上来说 单继承更明确 一个子类就应该是其父类代表的事物中的某个更具体的类别 不应该即是这种东西又是那种东西 而从实用角度上来说 单继承易读 易维护 语义清晰 逻辑清楚 而接口则不同 接口只定义一些公共行为 比如有两个接口 一个定义了跑这个动作 另一个定义了走这个动作 人这个类就可以同时实现这两个接口所定义的行

2017-08-22 12:18:51 296

原创 sleep和wait有什么区别

第一种解释:功能差不多,都用来进行线程控制,他们最大本质的区别是:sleep()不释放同步锁,wait()释放同步缩.         还有用法的上的不同是:sleep(milliseconds)可以用时间指定来使他自动醒过来,如果时间不到你只能调用interreput()来强行打断;wait()可以用notify()直接唤起.第二种解释:sleep是Thread类

2017-08-22 12:14:31 186

原创 PS与TOP详解

一:ps ps -l 查看属于自己这次登录的PID与相关信息列出来(只与自己的bash有关)  F:代表这个进程标志(process flags),说明这个进程的权限,常见号码有:  若为4表示此进程的权限为root; 若为1则表示此子进程仅可进行复制(fork)而无法执行(exec); S:代表这个进程的状态(STAT),主要的状态有:   

2017-08-21 11:04:12 291

原创 堆与堆排序

堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总

2017-08-03 16:01:03 192

原创 TCP的三次握手(建立连接)和四次挥手(关闭连接)

建立连接: 理解:窗口和滑动窗口TCP的流量控制TCP使用窗口机制进行流量控制什么是窗口?连接建立时,各端分配一块缓冲区用来存储接收的数据,并将缓冲区的尺寸发送给另一端接收方发送的确认信息中包含了自己剩余的缓冲区尺寸剩余缓冲区空间的数量叫做窗口2. TCP的流控过程(滑动窗口)TCP(Transmission Control

2017-07-30 15:39:54 272

原创 accept函数详解

既然服务端已经很虔诚了,很真诚了,处于倾听状态,那么该是去尝试接受客户端请求的时候了,别只顾着倾听,不去接纳别人。接纳客户端请求的函数是accept, 我们先来看看函数的原型:[cpp] view plain copyWINSOCK_API_LINKAGE  SOCKET  WSAAPI  accept(      SOCKET s,

2017-07-30 15:38:36 5497 2

原创 线程等待,退出

1. 线程的等待退出1.1. 等待线程退出线程从入口点函数自然返回,或者主动调用pthread_exit()函数,都可以让线程正常终止线程从入口点函数自然返回时,函数返回值可以被其它线程用pthread_join函数获取pthread_join原型为:#include int pthread_join(pthread_t th, void **thr

2017-07-30 15:37:19 366 1

原创 线程的调度

概述Windows 实现了一个由优先级驱动,抢占式的调度系统,也就是最高优先级的可运行的(就绪状态下的)线程总是先运行。有一种现象称之为“处理器亲合(processor affinity)”,即线程可能受处理器限制,只运行在那些允许它运行的处理器上。缺省的设置是线程可运行在任何可用的处理器上,用户可以通过使用一个Win32的调度函数修改处理器的“亲合性”。当一个线程被选择运行,它所运行

2017-07-26 17:39:38 312

原创 进程互斥锁

进程间共享数据的保护,需要进程互斥锁。与线程锁不同,进程锁并没有直接的C库支持,但是在Linux平台,要实现进程之间互斥锁,方法有很多,大家不妨回忆一下你所了解的。下面就是标准C库提供的一系列方案。1、实现方案不出意外的话,大家首先想到的应该是信号量(Semaphores)。对信号量的操作函数有两套,一套是Posix标准,另一套是System V标准。Posix信号量

2017-07-26 17:24:42 1768

原创 linux内存管理--进程在内存中的分布

一、进程与内存    所有进程(执行的程序)都必须占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。对任何一个普通进程来讲,它都会涉及到5种不同的数据段;代码段:代码段是用来存放可执行文件的操作指令,也就是说是它是

2017-07-12 13:39:24 3900

原创 队列----定义和实现

1、队列的定义队列(Queue):也是运算受限的线性表。是一种先进先出(First In First Out ,简称FIFO)的线性表。只允许在表的一端front进行插入,而在另一端rear进行删除。    队首(front) :允许进行删除的一端称为队首。    队尾(rear) :允许进行插入的一端称为队尾。   例如:排队购物。操作系统中的作业排队。先进入队列的成员总是先

2017-07-11 16:45:29 371

原创 判断一个字符串、整数是否为回文字符串或回文数

所谓回文字符串或回文数,就是一个字符串或整数反过去看与顺过去看都是一样的,比如abcba反过来也是abcba,1331反过来看也是1331,所以这就是所谓的回文字符串或回文数。下面我们就来编程得到所谓的回文字符串和回文数。1、回文字符串检测并输出:(1)采用数组的方式:[html] view plain copy#includ

2017-07-11 15:54:33 599

原创 HTML <frame> 标签

实例简单的三框架页面: 亲自试一试浏览器支持IEFirefoxChromeSafariOpera     所有浏览器都支持 标签。定义和用法 标签定义 frameset 中的一个特定的窗口(

2017-06-20 20:13:02 310

原创 HTML <frameset> 标签

实例简单的三框架页面: 亲自试一试浏览器支持IEFirefoxChromeSafariOpera     所有浏览器都支持 标签。定义和用法frameset 元素可定义一个框架集。它被用来组

2017-06-20 20:11:58 294

原创 HTML <div> 标签的 align 属性

实例文档中的一个部分居中对齐:align="center"> This is some text!亲自试一试定义和用法align 属性规定 div 元素中的内容的水平对齐方式。浏览器支持所有浏览器都支持 align 属性。兼容性注释在 HTML 4.01 中,不赞成使用 div 元素的 align

2017-06-15 22:10:24 840

原创 target=_blank与target=_self的区别

target=_blank会在当前窗口之外再打开一个新窗口来显示新的页面, 这样,用户可以看当前窗口的内容,就不觉的无聊,而且可以打开其它栏目,慢慢等待各个请求依次完成,这样就比target=_self在当前窗口打开新页 面,用户需要长时间看着一个一成不变的页面等待,或看着缓慢移动的滚动条发呆,要好得多说白了,就是:target=_blank打开新页面,target=_self在本身页面中

2017-06-14 21:43:55 6038

原创 HTML超链接

一、超文本(HyperText)  标记语言的真正威力在于其收集能力,它可以将收集来的文档组合成一个完整的信息库,并且可以将文档库与世界上的其他文档集合链接起来。这样的话,读者不仅可以完全控制文档在屏幕上的显示,还可以通过超链接来控制浏览信息的顺序。这就是 HTML 和 XHTML 中的 “HT” - 超文本(hypertext),就是它将整个 Web 网络连接起来。参考:

2017-06-14 20:55:33 1479

原创 HTML实体符号代码速查表

HTML实体符号被用作实现保留字符(reserved characters)或者表达键盘无法输入的一些常用字符(感谢阿里的提示)。在大多数浏览器中默认的字符集为ISO-8859-1。HTML实体符号使我们在网页设计中经常用到的,下面做了整理,以备速查。 HTML实体符号代码速查表 来源:entitycode 翻译整理:CSS9.NET(提示:使用浏览器的前进后退键可在各选项卡浏

2017-06-14 20:45:39 452

转载 HTML基本组成结构与标签

其实组成结构用一张图来简单了解下如下目前一般网站的结构是会如此不是很清晰简单先来说说header头部这样是不是更加清楚了 导航栏是引导用户查看网站内容的快捷入口,打个比方例如你去超市买酱油,超市的头顶上会挂着分类区域例如,生活用品、服装、厨具等然后你就会通过分类去找你要买的物品归类在哪,到那你就只用找你想要买的酱油就可以了。这样是不是容易理解点

2017-06-14 15:15:24 4321

空空如也

空空如也

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

TA关注的人

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