基于HTTP实现的小型web服务器

主要流程为:服务器获得请求–>响应并处理请求–>返回结果。 完整的HTTP过渡到TCP实现客户端与服务器的交互过程 1.当客户端执行网络请求的时候,从url中解析出url的主机名,并将主机地址转换成ip 2.从url解析出服务器的所用端口号 3.客户...

2018-09-12 22:26:09

阅读数 675

评论数 0

C++ Primer Plus第6版重点笔记

之前看《C++ Primer Plus》第6版这本书后所做的笔记,先开始复习,整理出来。 1.C++的const比C语言#define更好的原因? 首先,它能够明确指定类型,有类型检查功能。 其次,可以使用C++的作用域规则将定义限制在特定的函数或文件中。 第三,可以将const用于更复杂的...

2018-09-10 00:11:06

阅读数 246

评论数 0

NULL和nullptr区别

NULL来自C语言,一般由宏定义实现,而nullptr则是C++11的新增关键字。在C语言中,NULL被定义为(void*)0,而在C++语言中,NULL则被定义为整数0。编译器一般对其实际定义如下: #ifdef __cplusplus #define NULL 0 #else #defin...

2018-09-09 22:55:09

阅读数 196

评论数 0

从输入域名,到拿到首页的所有细节过程

深刻理解输入域名,到拿到首页的所有细节过程  以访问百度为例 目录 输入地址 浏览器查找域名的IP地址 浏览器向WEB服务器发送Http请求 浏览器的永久重定向响应 服务器处理请求 服务器返回一个HTTP响应 浏览器显示HTML 从输入url到页面展示总共经过如下几个过程: 域...

2018-09-05 23:35:05

阅读数 383

评论数 0

CSDN--我的收藏地址

有时候看到有用的文章,点了收藏之后找不到在哪看, 登录博客之后,点这个链接: http://my.csdn.net/my/favorite

2018-09-05 21:45:21

阅读数 37

评论数 0

站在不同角度对操作系统的认识

目录   站在冯诺依曼角度,理解操作系统定位 站在管理角度,理解操作系统[先描述再组织] 站在应用者的角度,理解操作系统  站在操作系统角度,理解系统调用接口 站在操作系统角度,理解操作系统外壳程序定位与作用(Linux shell)  对比系统调用,理解库函数 站在冯诺依曼角度,...

2018-08-28 00:30:35

阅读数 436

评论数 0

数据结构中常见的几种排序算法

    数据结构中常见的几种排序算法 快速排序 目录 数据结构中常见的几种排序算法 快速排序 插入排序 希尔排序 归并排序 堆排序 选择排序 冒泡排序 基数排序 快速排序 基本思想: 基准分割法  a) 通过一趟排序将要排序的数据分割成独立的两部分其中一部分...

2018-08-27 15:52:20

阅读数 1465

评论数 0

CentOs7下 ifconfig 之后没有ip解决方法

相信大家用虚拟机会经常遇到这样的问题,我也是试了好多方法才解决的,在这了跟大家分享下我解决的方法   方法: 1.先用dhclient eth0获取IP地址, 2.然后运行ifconfig eth0  3.如果是静态IP 可能获取到的IP不是/etc/sysconfig/network-...

2018-08-27 15:14:55

阅读数 590

评论数 0

封装fork/wait等操作, 编写函数 process_create

封装fork/wait等操作, 编写函数 process_create(pid_t* pid, void* func, void* arg), func回调函数就是子进程执行的入口函数, arg是传递给func回调函数的参数. 函数的格式为:int process_creat(int (*fork...

2018-04-25 19:12:30

阅读数 87

评论数 0

C++类和继承中的部分经典面试题

1.如何实现一个无法继承的类? 思路: 私有继承不可见,构造函数是合成的 class A { public: static A* GetObj1() //静态成员函数 { return new A; //new 对象 } static A GetObj2() { ...

2018-04-23 21:22:03

阅读数 321

评论数 0

C语言模拟实现C++中的继承和多态

继承与多态的概念  继承:是面向对象最显著的特点,继承是从已有类派生出新的类,新的类继承了已有类的数据和行为, 并能扩展新的能力,已有类被称为父类/基类,新的类称为子类/派生类; 多态:按字面意思就是“多种形态”,在面向对象语言中,接口的多种不同实现方式,即为多态, 同一操作用于不同的...

2018-04-22 00:33:11

阅读数 121

评论数 0

字符串函数的模拟实现

#define _CRT_SECURE_NO_WARNINGS # include #include #include 1.实现strcpy char *my_strcpy( char*dest, const char*src) { char*ret = dest; assert(dest...

2018-04-18 22:27:05

阅读数 72

评论数 0

linux下实现简单的shell

用到以下三个函数: fork:pid_t fork(void); //创建子进程 int execvp(const char *file,char * const argv[]);//替换子进程 pid waitpid(int *status);进程等待 #include #inclu...

2018-04-18 22:09:29

阅读数 101

评论数 0

C++实现一个日期类

#define _CRT_SECURE_NO_WARNINGS #include #include using namespace std; class Date { public: Date(int year, int month, int day) //...

2018-04-16 23:32:09

阅读数 122

评论数 0

new和delete解析 c++笔记

1.new/delete 和operator new/operator delete和malloc/free的关系  new,delete运算符: 当我们使用一条new表达式时,实际上执行了三步操作: 第一步,new表达式调用一个名为operator new(或者operator new[]...

2018-04-11 20:01:41

阅读数 41

评论数 0

类和对象

1.const成员函数  const修饰成员函数 在成员函数后面加上const关键字,const修饰得是this指针指向的对象,保证调用这个const成员函数的对象在函数内不会被改变。  思考题:  1、const对象可以调用非const成员函数和const成员函数?  2、非con...

2018-04-11 19:01:51

阅读数 60

评论数 0

线程和进程的区别

1.程序: 为了执行特定任务的一系列指令的有序集合 硬件中断技术的出现,进而软件上有了分时系统,时间片轮转 2.进程: 从用户角度看: 进程是程序的一次动态执行过程 从操作系统的角度看: a.进程是操作系统内存分配 ,CPU时间片等资源的基本单位 b.每个进程又自己独立的地址空间和进程...

2018-04-10 18:13:22

阅读数 34

评论数 0

Linux开发工具

1.常用的牛逼的编辑器, 并能够横向对比编辑器之间的区别和优缺点.  gedit: 是各个发行版本都有的编辑器,类似于windiws的记事本,不过可以根据代码类型着色 vim: vim是一个非常强大的编辑器,但是上手难度非常高,有很多个快捷键,对于初学者来说很困难 Kom...

2018-03-31 00:34:08

阅读数 147

评论数 0

C++引用和指针

1.引用的概念及用法  引用引入了对象的一个同义词。定义引用的表示方法与定义指针相似,只是用&代替了*。引用(reference)是c++对c语言的重要扩充。引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。 定义的格式为:      类型 &引用变量...

2018-03-30 23:06:16

阅读数 176

评论数 0

vim常用按键的使用

vim的三种模式: 1.命令模式:在Linux终端中输入“vim 文件名”就进入了命令模式,但不能输入文字。  2.编辑模式:在命令模式下按i就会进入编辑模式,此时就可以写入程式,按Esc可回到命令模式。  3.末行模式:在命令模式下按:进入末行模式,左下角会有一个冒号出现,此时可以敲入命令...

2018-03-30 17:10:35

阅读数 88

评论数 0

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