- 博客(59)
- 资源 (2)
- 收藏
- 关注
原创 网站thrift 以及 gtest
http://www.cnblogs.com/coderzh/archive/2009/03/31/1426758.html
2015-04-07 17:16:36
558
原创 size_t类型
查看 gcc头文件 stddef.h可以看到#define __size_t#endif#ifndef __SIZE_TYPE__#define __SIZE_TYPE__ long unsigned int#endif#if !(defined (__GNUG__) && defined (size_t))typedef __SIZE_TYPE__ size_t;
2015-03-23 16:18:05
675
原创 stl containers usage empirical—— from Effective STL
Do you need to be able to insert a new element at an arbitrary position in thecontainer? If so, you need a sequence container: associative containers won'tdo.• Do you care how elements are order
2014-08-26 11:08:54
927
原创 Notes
Private inheritance means is-implemented-in-terms-of.Public inheritanc
2014-08-21 18:05:58
604
转载 在linux下面使用mtrace来检查一般程序的内存溢出
在linux下面使用mtrace来检查一般的程序的内存溢出对于内存溢出之类的麻烦可能大家在编写指针比较多的复杂的程序的时候就会遇到。Debug起来也是比较累人。其实linux系统下有一个使用的工具可以帮忙来调试的,这就是mtrace。Mtrace主要能够检测一些内存分配和泄漏的失败等。下面我们来学习一下它的用法。使用mtrace来调试程序有4个基本的步骤,需要用到GNU C 函
2014-08-15 17:32:46
3335
转载 C语言标准(转自wikipedia)
早期发展[编辑]肯·汤普逊和丹尼斯·里奇, 是C编程语言的开发人.C语言最早是由丹尼斯·里奇为了在PDP-11电脑上运行的UNIX系统所设计出来的编程语言,第一次发展在1969年到1973年之间。C源于BCPL语言,后者由Martin Richards于1967年左右设计实现。BCPL是一门"无类型"的编程语言:它仅能操作一种数据类型,即机器字(
2014-08-14 11:16:21
920
转载 SO_LINGER
setsockopt 设置 SO_LINGER 选项 此选项指定函数close对面向连接的协议如何操作(如TCP)。内核缺省close操作是立即返回,如果有数据残留在套接口缓冲区中则系统将试着将这些数据发送给对方。 SO_LINGER选项用来改变此缺省设置。使用如下结构:struct linger { int l_onoff; /* 0
2014-07-30 15:59:46
764
原创 nginx+lua+redis(openresty)配置
1.安装lua解释器http://luajit.org/download/LuaJIT-2.0.2.tar.gz2.
2014-07-18 11:10:18
28365
原创 Sorts of Useful Articles
1.静态小文件服务各类代理服务器使用性能分析比较:http://nbonvin.wordpress.com/2011/03/24/serving-small-static-files-which-server-to-use/
2014-05-30 15:29:25
768
转载 iptables命令学习
查看iptables当前规则#iptables -L -n建立规则#iptables -A INPUT -s xxx.xxx.xxx.xx -p tcp --dport 80 -j DROP移除规则#iptables -D INPUT -s xxx.xxx.xxx.xx -p tcp --dport 80 -j DROP常用操作命令: -A 或
2014-05-21 11:29:40
550
原创 shell 以及python获取当前时间,构造文件后缀名
python 方法:import datetimenow_time = date time.datetime.now()yes_time = now_time + date time.timedelta(days=-1)yes_time_nyr = yes_time.strftime('%Y%m%d')//格式化输出shell方法
2014-04-24 09:44:39
1359
转载 telnet使用
1、什么是Telnet? 对于Telnet的认识,不同的人持有不同的观点,可以把Telnet当成一种通信协议,但是对于入侵者而言,Telnet只是一种远程登录的工具。一旦入侵者与远程主机建立了Telnet连接,入侵者便可以使用目标主机上的软、硬件资源,而入侵者的本地机只相当于一个只有键盘和显示器的终端而已。2、Telnet被入侵者用来做什么 (1)Telnet是控制主机的第一手段
2014-04-11 10:33:11
1807
转载 sourceinsight配置
1.括号配对高亮:“在前括号左侧,后括号左侧” 双击鼠标左键,可以选定匹配括号和其中内容( 2.让{ 和 } 不缩进:Options -> Document Options -> Auto Indenting -> Auto Indent Type 选 Simple还有:让{ 和 } 不缩进: options->document options->auto inde
2014-04-10 12:37:20
983
转载 wireshark过滤表达式实例介绍
----------------------------------------------------------------------------------------1、wireshark基本的语法字符\d 0-9的数字\D \d的补集(以所以字符为全集,下同),即所有非数字的字符\w 单词字符,指大小写字母、0-
2014-04-04 17:33:15
547
转载 wireshark 过滤规则
1.过 滤IP,如来源IP或者目标IP等于某个IP例子:ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107或者ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP2.过滤端 口例子:tcp.port eq 80 // 不管端口是来源的还是目标的都显示tcp.port ==
2014-04-04 17:25:09
633
原创 bash少见的用法
通过man bash,可以看到bash的特殊用法1.${BASH_SOURCE-$0} 获取脚本名称2. ${parameter:-default}SLAVE_FILE=${HADOOP_SLAVES:-${HADOOP_CONF_DIR}/slaves} 指定默认值 3. ${parameter/pattern/string/}${@// /\\ }
2014-04-03 20:00:29
6035
原创 hadoop2.3.0编译及安装配置
一、Hadoop 2.3.0源码编译1.工具----------------------------------------------------------------------------------Requirements:* Unix System* JDK 1.6+* Maven 3.0 or later* Findbugs 1.3.9 (if r
2014-04-02 12:56:01
5507
原创 不可复制对象,以及一种可靠的单例模式
#include#include#include//不可复制基类class nocopyable{ protected:nocopyable(){}~nocopyable(){} private:nocopyable(const nocopyable &);//用来防止友元和外部赋值调用const nocopyable & operator=
2014-03-06 20:01:14
986
转载 标准输出重定向加管道,获取system命令执行结果
#include #include #include #include #include static int getResultFromSystemCall(const char* pCmd, char* pResult, int size){ int fd[2]; if(pipe(fd)) { printf("pipe erro
2014-02-28 15:57:12
5166
1
转载 C/C++中字符串与数字相互转换
数字转字符串: 用C++的streanstream: #include #Include string num2str(double i) { stringstream ss; ss return ss.str(); }
2014-02-28 13:42:18
8082
转载 strtok和strsep函数详解
函数原型:char *strtok(char *s, const char *delim); char *strsep(char **s, const char *delim); 功能:strtok和strsep两个函数的功能都是用来分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。
2014-02-28 13:34:50
675
原创 C++ effective—构造函数
#includeusing namespace std;class A{public: explicit A() // explicit修饰构造函数,为了防止隐式类型转换,规定必须要显示调用 {cout }; A(const A &a)// 拷贝构造函数,另外系统提供一个默认的拷贝构造函数,使用位拷贝,存在指针成员变量时,一定要重写该函数
2014-01-21 16:13:23
677
转载 rsync使用说明
在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。Rsync的命令格式可以为以下六种: rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST
2014-01-14 14:57:18
613
转载 网络数据(socket)传输总结
环境限定:TCP/IP下的socket网络传输;C/C++开发语言,32/64位机。目前有两种方式对数据进行传输:1)字符流形式,即将数据用字符串表示;2)结构型方式,即将数据按类型直接传输。1)的方式保证所有的数据都是清晰的字符串明文,没有平台不一致问题,但传输的数据不定长,复合数据类型(如struct)的解析不方便。2)的方式保证数据长度固定/可控,方便对接受到数据的解析;
2013-12-31 03:02:22
819
转载 Linux system函数返回值
例:status = system("./test.sh"); 1、先统一两个说法:(1)system返回值:指调用system函数后的返回值,比如上例中status为system返回值(2)shell返回值:指system所调用的shell命令的返回值,比如上例中,test.sh中返回的值为shell返回值。2、如何正确判断t
2013-12-13 12:26:35
568
原创 C语言字符串函数与C++string的字符串函数
C语言中的字符串函数:char* strrchr(char* src, char c):从尾部查找第一次出现字符c的指针位置char * strchr(char *src,char c):从首部查找第一次出现字符c的指针位置char *strtok(char [] src,const char *delim):以delim为分割符来分割src串,将分隔符位置用'\0'替代,然后每次用
2013-12-09 10:17:29
669
转载 linux C程序中获取shell脚本输出
linux C程序中获取shell脚本输出(如获取system命令输出)1. 前言Unix 界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作。比如实现一个 ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令呢?通常在程序中通过 syste
2013-12-04 18:42:36
739
原创 使用openssl MD5库
#includeint main(){ MD5_CTX ctx; char *data ="12345"; char buf[33]={'\0'}; char tmp[3]={'\0'}; unsigned char md5[16]; //md5加密结果为16个十进制的数,返回为0-255,所以用的unsigned char,要变为1
2013-12-04 16:21:13
915
原创 python调用系统命令
大概有四种形式,的:1.os.system('ls'):返回结果为该命令的返回值2.tmp =os.popen('ls').readlines();将命令返回结果的返回给一个管道,然后读管道获取结果3.import commands status.result = getstatusoutput('ls') status:命令执行后的返回值,result为命令执行输出
2013-12-04 16:08:29
10918
原创 GNU C标准中,struct 空数组成员妙用,构建动态数组
typedef struct array { int len;//记录数据的长度 char data[0];//没有元素,但是data指向结构体后续的地址;}char_array;用法: 通过 char_array * p_array = (char_array *)malloc(sizeof(char_array)+LEN);来分配超过arra
2013-12-02 10:52:22
1375
原创 va_list ,va_start,va_end的使用
函数头文件#include缺省函数参数可以用...来指定,void test_va(char * test,...)函数参数一般是从右到左入栈va_list来定义一个遍历参数列表的指针,va_list va_ptr;va_start(va_ptr,test);指定指针的初始值va_arg(va_ptr,int) 来获取当前参数的值,这里的类型可以通过test格式字符串类型进行分
2013-11-30 23:23:07
598
原创 signal与raise,sigaction
头文件:#includesignal 用法:void(*)(int) signal(int signum,void(*)(int)) 注册信号处理函数,可以是SIG_DFL(默认处理)、SIG_IGN(忽略)、用户自定义函数 int raise(int signum) 产生指定信号,可以出发信号处理函数调用,返回为0代表产生成功siga
2013-11-30 00:48:37
785
原创 读写锁pthread_rwlock_t的使用
读写锁是用来解决读者写者问题的,读操作可以共享,写操作是排他的,读可以有多个在读,写只有唯一个在写,同时写的时候不允许读。具有强读者同步和强写者同步两种形式强读者同步:当写者没有进行写操作,读者就可以访问;强写者同步:当所有写者都写完之后,才能进行读操作,读者需要最新的信息,一些事实性较高的系统可能会用到该所,比如定票之类的。读写锁的操作:读写锁的初始化:
2013-11-25 12:45:59
40504
1
Fast TCP设计原理
2014-08-28
Nginx文件上传模块配置
2014-04-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人