自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (2)
  • 收藏
  • 关注

原创 网络笔记

3. IP地址分类IP地址格式:part1.part2.part3.part4 所有IP地址由两部分构成:网络号+主机号 A类地址:最高位固定为0,part1为网络号,part2.part3.part4为主机号 B类地址:最高两位固定为10,part1.part2为网络号,part3.part4为主机号 C类地址:最高三位固定为110,part1.part2.part3为网络号

2015-02-10 15:52:38 423

原创 命名空间

1. 基本形式x.hnamespace Name{ class C { public: void F(); private: ... };}x.cpp#include "x.h"namespace Name{ void C::F() { ... return; }}2. 名字隐藏命名空间内的类、函数、变量、类型别名会隐

2015-02-06 15:10:13 1092

原创 多重继承和虚继承

示例typedef struct{ std::string sIp; DWORD dwPort; TcpRow( const std::string &sIp_t = "", const DWORD dwPort_t = 0 ) : sIp(sIp_t), dwPort(dwPort_t) {}}TcpRow;typedef struct : virt

2015-01-15 19:08:30 1098

原创 TCP/IP协议格式详解

.

2015-01-15 16:57:33 1850

原创 SVN的使用

解决冲突的方法:1.右击冲突文件2.编辑冲突3.选择版本4.右击冲突文件5.Resolve已解决冲突

2015-01-13 16:06:28 436

原创 VS2010

1.病症:

2014-12-04 11:57:57 788

原创 CPU线程调度

阿斯顿发实验过程:1.假设CPU数为n,创建n+1个线程。2.1-n号线程先创建,运行while死循环。3.n+1号线程最后创建,运行一开始先Sleep 0.1秒,然后不断写文件1.txt实验结果:1.txt被创建,内容为54M的"nihao"结论:相同优先级的多个线程平摊CPU时间,每个线程以时间片为执行单位。时间片用完后,CPU先看有没有更高

2014-09-01 09:25:27 2707

原创 cJSON

cJSON只有cJSON.h和cJSON.c两个文件、600行代码,

2014-08-29 14:58:32 5181

原创 字符串和数字相互转换

1.

2014-07-14 18:27:42 654

原创 QThread应用详解

http://blog.sina.com.cn/s/blog_a74f39a201012nv8.html

2014-07-14 16:46:55 634

原创 QT windows VS C++

http://qt-project.org/downloads

2014-05-21 17:30:57 1056

原创 信号量大多数情况下可以淘汰条件变量

多线程编程中,发现同步和互斥的手段中,条件变量见到的是最少的。后来查找资料发现:使用信号量完全可以模拟条件变量,而且通常更加具有优势。可以用信号量模拟锁和条件变量:1) 锁,在同一个线程内同时对某个信号量先调用sem_wait再调用sem_post, 两个函数调用其中的区域就是所要保护的临界区代码了,这个时候其实信号量是作为二值计数器来使用的.不过在此之前要初始化该信号量计数为

2014-04-11 14:06:44 1949 1

原创 运算符优先级

优先级操作符描述例子结合性1()[]->.::++--调节优先级的括号操作符数组下标访问操作符通过指向对象的指针访问成员的操作符通过对象本身访问成员的操作符作用域操作符后置自增操作符后置自减操作符(a + b) / 4;array[4] = 2;ptr->age = 34;obj.age = 34;

2014-03-24 15:21:20 477

原创 LINUX

1.读文件:int fd = open("txt",O_RDWR);if(fd == -1){ std::cout<<"open file fail"<<std::endl; return -1;}char ch[50] = {0};if(read(fd, ch, 50) == -1){ std::cout<<"read file f

2014-03-20 20:27:49 1220

原创 sigaction函数解析

sigaction函数的功能是检查或修改与指定信号相关联的处理动作(可同时两种操作)。他是POSIX的信号接口,而signal()是标准C的信号接口(如果程序必须在非POSIX系统上运行,那么就应该使用这个接口)给信号signum设置新的信号处理函数act, 同时保留该信号原有的信号处理函数oldactint sigaction(int signo,

2014-03-05 15:58:26 652

原创 C++笔记

61. 字符串比较安全的字符串比较方法:src.compare(pos, obj.len, obj);说明:以「obj.len」为参数,可以保证当src的子串(起始索引为「pos」)长度小于「obj.len」时,不会发生越界,而是取最长子串示例:  60. deletedelete void* 指针是十分危险的,因为它不会调用指针实际指向的对象的析构函数,所以可...

2014-02-27 21:54:52 1819

原创 字符串

1.字符串查找函数:1.1 正向查找:int find(std::string substr, int pos)从字符串pos(首字符位置为0)开始查找substr第一次出现的位置,并返回索引(首字符位置为0)。int pos = 8;int index = obj.find("\\u00", pos);查找字符串中所有的子串:int index = 0;whi

2014-02-25 21:37:48 1790

原创 stl

1.map用来存储键值对,key-value的形式。std::map tem;tem.insert(std::pair(1,24.3));tem.insert(std::pair(2,21.7));std::map::iterator iter;for(iter = tem.begin(); iter != tem.end; ++iter){int key = it

2014-02-25 21:06:47 972

原创 时间函数和定时线程(linux C )

1.日期时间输出格式:printf("%d-%02d-%02d\n",1994,2,7);输出:1994-02-07  d表示输出整数、2表示宽度、0表示不足两位前面补0,右对齐。2.signal函数:signal(SIGALRM,statistic);线程收到SIGALRM信号,暂停手头工作,开始执行void statistic(int)函数。statistic执行完后,

2014-02-24 19:32:43 5729

原创 socket编程

tcp连接的关闭经过FIN->ACK->FIN->ACK四步握手。服务器先调用close(socket):客户端先调用close(socket):一个close()对应着一个FIN,一个FIN对应着一个close()调用。只有双方都使用close关闭socket后,连接才算关闭,以上就是以绅士的方式关闭TCP连接。但是不管是谁,率先调用close()的一方必回最终处于T

2014-02-20 18:21:02 1236

原创 MySQL

Linux:CentOS6.4Mysql下载地址:http://dev.mysql.com/downloads/mysql/MySQL-5.6.16-1.el6.x86_64.rpm-bundle.tar解压后:1.安装server:rpm -ivh MySQL-server-5.6.16-1.el6.x86_64.rpm 安装MySQL服务器。rp

2014-02-09 10:39:33 1971

原创 小记

搜索文件中含有“evutil_make_listen_socket_reuseable”,递归查找子目录grep evutil_make_listen_socket_reuseable * -r

2014-01-23 18:16:27 1755

原创 二维数组和二级指针

void output(char **buffer){ printf(“%s\n”,buffer[0]);}void main(){ char buffer[100][1024] = {0}; int len = sprintf(buffer[0],"i am a bastard..."); buffer[0][len] = '\0'; output(buffe

2014-01-20 19:53:55 1440 5

原创 1.17 一周遇到的问题

1.编译线程gcc要加-lpthread加入线程库2.CentOS下gcc版本太低,没有g++。换了163的源还是没有新版本,下了个gcc最新的,安装什么的很麻烦,最后sudo yum install gcc-c++搞定3.启动sshd:在任何目录下直接输入service sshd start

2014-01-17 21:26:35 699

原创 libjson使用详解(linux和windows)

我长话短说:http://download.csdn.net/detail/rongxiaojun/6859823从官网下的最新的libjson 在centOS 6.4下使用各种错误,“undifined reference to JSONNode”等。上面是我经过修改后的库文件,解压后两文件:libjson.a 和 libjson.tar.bz2,把静态库libjson.a放到库

2014-01-17 20:35:04 11175

原创 error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file

1. 往/lib和/usr/lib里面加东西,是不用修改/etc/ld.so.conf的,但是完了之后要调一下ldconfig,不然这个library会找不到2. 想往上面两个目录以外加东西的时候,一定要修改/etc/ld.so.conf,然后再调用ldconfig,不然也会找不到。比如安装了一个mysql到/usr/local/mysql,mysql有一大堆library在/us

2014-01-14 17:01:33 2411

转载 CentOS6.4配置163的yum源

CentOS系统自带的更新源的速度实在是慢,为了让CentOS6使用速度更快的YUM更新源,可以选择163(网易)的更新源。1.下载repo文件wget http://mirrors.163.com/.help/CentOS6-Base-163.repo2.备份并替换系统的repo文件[root@localhost ~]# cd /etc/yum.repos.d/[root

2014-01-13 19:17:01 788

转载 epoll

首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。    不管是文件,还是套接字,还是管道,我们都可以把他们看作流。    之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中读数据,但是流中还没有数据,(典型的例子为,客户端要

2014-01-10 11:20:22 766

原创 字符编码 编码转换 乱码

我长话短说:用GET从HTTP上请求了数据,用recv函数直接收到了char *buffer中,在VS中查看结果HTTP/1.1 200 OK Date: Thu, 09 Jan 2014 01:29:15 GMT Server: Microsoft-IIS/6.0 X-Powered-By: ASP.NET X-AspNet-Version: 2.0.50727 Cache-Co

2014-01-09 15:09:58 5679

转载 ANSI,ASCII,Unicode的区别与联系

快下班时,爱问问题的小朋友Nico又问了一个问题: "sqlserver里面有char和nchar,那个n据说是指unicode的数据,这个是什么意思。" 并不是所有简单的问题都很容易回答,就像这个问题一样。于是我答应专门写一篇BLOG来从头讲讲编码的故事。那么就让我们找个草堆坐下,先抽口烟,看看夜晚天空上的银河,然后想一想要从哪里开始讲起。嗯,也许这样开始比较好…… 很久很久

2014-01-09 14:28:01 583

转载 字符串常量指针问题

采用指针存储字符串,其实质就是把字符串的首地值附给基类型为char的指针变量,从而可以从字符串首元素开始对字符串进行操作,这里面也存在一点问题.        用这个类子给大家解释解释.            int main()         {            char *p="hello world";           

2014-01-09 13:39:52 947

原创 字符串自动给JSON赋值

下载Jsoncpp,把里面的include和src下的文件拿到自己的工程object结构 {“字段”:“值”,“字段”:“值”,..................} array结构 [object,object,object..................]字符串自动转化为JSON  "{\"ID\":125,\"Name\":\"荣九\"}"Json::Re

2014-01-09 10:10:06 3235

原创 要看的东西

1.linux内核源码

2013-12-26 08:44:18 558

QT5发布程序需要的所有依赖库文件

QT5发布程序需要的所有依赖库文件,把exe文件放到该目录下就可以直接发布了

2014-07-01

libjson C++ linux

libjson C++ linux 封装的库文件,拿来直接用

2014-01-17

空空如也

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

TA关注的人

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