自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dogyao

cool,cool,cool

  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

转载 snmp配置

SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。在RHEL中,SNMP的配置文件地址是/etc/snmp/snmpd.conf。snmpd.conf的配置项很多,但是真正常用的就那么几个,下面来逐个介绍。com2sec命令,它的基本语法是“com2sec NAME SOURCE COMMU

2017-12-12 01:23:41 1824 1

转载 C socket 发送HTTP简单介绍

HTTP请求头部样例:GET http://www.baidu.com/ HTTP/1.1Accept: html/textHost: 220.181.6.175:80Connection: Close 这是一个请求百度页面的头部。属性和值的命名中间用:和空格隔开,结尾使用\r\n,头部结束使用\r\n\r\nGET表示采用GET方法,当然我们常见的还有POST等其

2017-11-30 00:39:54 1388

转载 SIGPIPE信号

我写了一个服务器程序,在Linux下测试,然后用C++写了客户端用千万级别数量的短链接进行压力测试. 但是服务器总是莫名退出,没有core文件. 最后问题确定为, 对一个对端已经关闭的socket调用两次write, 第二次将会生成SIGPIPE信号, 该信号默认结束进程. 具体的分析可以结合TCP的”四次握手”关闭. TCP是全双工的信道, 可以看作两条单工信道, TCP连接两端的两个端点各

2016-08-01 02:11:42 252

原创 关联容器

标准库共提供了8个关联容器map 关联数组:保存关键字-值对set 关键字即值,即只保存关键字的容器multimap 关键字可重复出现的mapmultiset 关键字可重复出现的setunordered_map 用哈希函数组织的mapunordered_set 用哈希函数组织的setunordered_multimap 用哈希函数组织,关键字可重复出现的mapunordered_mul

2016-06-16 19:26:28 306

原创 回调函数的作用

1.回调函数是一个很有用,也很重要的概念。当发生某种事件时,系统或其他函数将会自动调用你定义的一段函数。2.回调函数就相当于一个中断处理函数,由系统在符合你设定的条件时自动调用。为此,你需要做三件事:1,声明;2,定义;3,设置触发条件,就是在你的函数中把你的回调函数名称转化为地址作为一个参数,以便于系统调用。3.所谓回调函数就是按照一定的形式由你定义并编写实现内容,当发生某种事件时,而由系统或其它

2016-06-15 19:41:49 630

原创 URL基本介绍

语法URL由三部分组成:资源类型、存放资源的主机域名、资源文件名。 URL的一般语法格式为: (带方括号[]的为可选项)protocol :// hostname[:port] / path / [;parameters][?query]#fragment格式说明 protocol(协议) 指定使用的传输协议,下表列出 protocol 属性的有效方案名称。 最常用的是HTTP协议,它也是目

2016-06-15 16:04:02 1284

转载 C++ 解析Json——jsoncpp

C++ 解析Json——jsoncppJSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml类似,本文主要对VS2008中使用Jsoncpp解析json的方法做一下记录。 Jsoncpp是个跨平台的开源库,下载地址:http://sourceforge.net/projects/jsoncpp/,我下载的是v0.5.0,压缩包大约104K。方法一:使

2016-04-07 02:17:04 346

原创 C++:string,string.h和cstring的区别

带.h的头文件是C中的头文件,string.h头文件是C中的头文件。在C++中对其进行了修改,对应与C++中的cstring头文件,其都是如strcpy,strcmp等的操作。 cstring头文件也是C++中的头文件,在其内部定义了一个string类及其一些操作;并且其还包括对字符串如strcpy,strcmp等的操作(即包含了cstring头文件)。

2016-03-17 01:30:57 413

转载 C++ inline 函数

(一)inline函数(摘自C++ Primer的第三版) 在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联。      inline int min(int first, int secend) {/****/};      inline 函数对编译器而言必须是可见的,以便它能够在调用点内展开该函数。与非inline函数不同的是,inline函数

2016-02-24 10:05:44 217

转载 static,const,static const , const static成员初始化

1.类里的const成员初始化:在一个类里建立一个const时,不能给它初值。像class A{ public:   const int i=100;   A   {     } };    这样的初始化方式是不能通过编译的,因为在类对象里进行了存储空间分配,编译器不能知道const的内容是什么,所以不能把它用作编译期间的常量。这意味着对于类里的常数表达

2015-11-15 15:57:03 294

转载 C++ typedef总结

第一、四个用途用途一:定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如:char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量;以下则可行:typedef char* PCHAR; // 一般用大写PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针虽然:

2015-10-25 11:36:34 205

转载 cmake 常用变量和常用环境变量查表手册---整理 .

【转载自】http://blog.csdn.net/gubenpeiyuan/article/details/8667279cmake 常用变量和常用环境变量查表手册---整理 .一,cmake 变量引用的方式:前面我们已经提到了,使用${}进行变量的引用。在 IF 等语句中,是直接使用变量名而不通过${}取值二,cmake 自定义变量的方式:主要有隐式定义和显

2015-09-02 08:59:35 418

转载 #pragma 预处理指令详解

#pragma 预处理指令详解  在所有的预处理指令中,#pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。      其格式一般为:

2015-09-01 20:50:49 185

转载 C++中Operator类型强制转换成员函数解析

http://www.jb51.net/article/41333.htm类型转换操作符(type conversion operator)是一种特殊的类成员函数,它定义将类类型值转变为其他类型值的转换。转换操作符在类定义体内声明,在保留字 operator 之后跟着转换的目标类型。转换函数又称类型强制转换成员函数,它是类中的一个非静态成员函数。它的定义格式如下:   class <类型说明符1>

2015-08-26 07:29:49 381

转载 c++中的可变参数

1、可变参函数的原理C/C++函数的参数是存放在栈区的,并且参数的入栈是从参数的右边开始,即最后一个参数先入栈,而第一个参数最后才入栈,所以,根据栈的后进先出性质,函数总能找到第一个参数。所以,可变参函数的实现必须能够从已知参数中获取到函数所需要参数的个数; 例如printf函数,第一个参数就是一个格式串,而后面所需要的参数个数能够从格式串中得到。 2、可变参函数的设计标准头文件stdarg.h

2015-07-28 08:54:40 717

转载 #define宏中的“#”和“##”

【转载自】:http://blog.163.com/y845766643@126/blog/static/17104630220113289280333/#define f(a,b) a##b #define d(a) #a #define s(a) d(a) void main( void ) {     puts(d(f(a,b)));     puts(s

2015-07-27 09:16:48 201

转载 #define 中的“#”和“##”

【转载自】:http://blog.163.com/y845766643@126/blog/static/17104630220113289280333/define f(a,b) a##bdefine d(a) #adefine s(a) d(a)void main( void ) { puts(d(f(a,b))); puts(s(f(a,b))); }输出结果: f(

2015-07-27 08:49:15 335

转载 c++ 中的单冒号与双冒号

【转载自】:http://blog.sina.com.cn/s/blog_8961925401016mjc.html1.冒号(:)用法(1)表示机构内位域的定义(即该变量占几个bit空间)typedef struct _XXX{ unsigned char a:4; unsigned char c;} ; XXX(2)构造函数后面的冒号起分割作用,是类给成员变量赋

2015-07-14 09:19:11 702

转载 C++模板详解

C++模板  模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数、返回值取得任意类型。  模板是一种对类型进行参数化的工具;  通常有两种形式:函数模板和类模板;  函数模板针对仅参数类型不同的函数;  类模板针对仅数据成员和成员函数类型不同的类。  使用模板的目的就是能够让程序员编写与类型无关的代码。比如编写了一个交换两个整型

2015-07-14 09:17:31 589

转载 C++命名空间

【转载自】:http://blog.csdn.net/passball/article/details/6630877本讲基本要求 * 掌握:命名空间的作用及定义;如何使用命名空间。 * 了解:使用早期的函数库重点、难点 ◆命名空间的作用及定义;如何使用命名空间。在学习本书前面各章时,读者已经多次看到在程序中用了以下语句: using namespace std;这就

2015-07-08 12:40:41 228

转载 C/C++宏定义中#与##区别

【转载自】:http://blog.csdn.net/huang_xw/article/details/7648179 // #表示:对应变量字符串化 // ##表示:把宏参数名与宏定义代码序列中的标识符连接在一起,形成一个新的标识符 #include <stdio.h> #define trace(x, format) printf(#x " = %" #

2015-07-08 10:00:52 312

linux cfunction手册

中文C语言函数手册

2016-11-01

空空如也

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

TA关注的人

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