自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 sql学习

执行顺序:from where group by having select distinct union order bymysql一、mysqladmin mysql管理工具1.修改密码 mysqladmin -u root password "newpassword"2.关闭mysql服务器:mysqladmin -u root -p shutdown二、mysq

2018-01-16 23:50:42 191

原创 python学习

python语法:每一样东西都是对象1.字符串 可以使用单引号,双引号,三引号('''或""")。并且使用三引号可以代表多行,用来做为docstring:"""aaabbbccc"""2.语句(if,else,while等)、函数都加:,以if为例:if condition :3.代码行结束无分号4.print语句:x=5print x," is aaa" #5

2018-01-16 23:49:53 188

原创 面试准备

1.int(*s[10])(int)表示什么意思?int (*s[10])(int)表示s是一个数组,含有10个元素,每个元素都是一个函数指针(参数为int,返回值为int)。2.函数指针和指针函数区别指针函数就是返回值是一个指针,它是一个普通函数。如int* abc(int a){return &b;}函数指针就是一个指针,该指针指向函数。如: int (*abc)(int a)

2018-01-16 23:49:15 373

原创 c++笔记

一.socket1.listen(int fd,int backlog).backlog表示已经完成3次握手而等待accept的最大个数。listen调用后,内核会建立2个队列,一个是syn队列,表示接受的请求但还未完成3次握手的连接,一个是accept队列,表示完成3次握手的队列。2.accept(int fd,struct addr,socklen_t *len).会从accept

2018-01-16 23:48:03 526

转载 makefile模板

一.编译.soCC = gccCFLAGS =# opencv 头文件和lib路径 OPENCV_INC_ROOT = ../includeOPENCV_LIB_ROOT = /usr/local/lib#.o文件与.cpp文件同名OBJS = waf_log_client.o# 目标文件名LIB = ../lib/libcommon.so OP

2017-02-22 14:28:46 223

转载 apache模块开发

apache扩展模块开发:http://www.chinaunix.net/old_jh/23/1255594.htmlapache显示处理流程配置 http://httpd.apache.org/docs/current/mod/mod_info.htmlmod_security英文文档:https://github.com/SpiderLabs/ModSecurity/wiki/Ref

2017-01-17 11:24:35 365

转载 二层三层转发学习

二层转发首先说A把数据传给A网关。A在给B发数据时,A通过本身地址及掩码与B地址做“与”运算,如果发现与B是同一网段,那么广播发送即可(同你说的);如果发现与B不在同一网段,那么A会查找网关(A在电脑上配置的),发送ARP请求获得网关MAC地址,获得MAC后,数据包中原IP为A的IP,目的IP为B的IP,原MAC地址为A的MAC地址,目的MAC地址为A网关的地址,这样A就将包发给了网关。

2017-01-17 11:18:18 597

转载 程序设计原则

设计原则1.两个类之间非继承关系,一个类要用到另一个类,需要将其作为它的一个成员,而非是作为父类继承2.多线程改造:用到队列的地方类可以改造成多线程

2017-01-17 11:11:50 217

原创 c++编译错误

一.变量未定义的引用:    1.如果变量是类中的静态成员,需要先在类外部初始化。否则会出现此种错误二。头文件包含了,却报     zsp_ipc_proxy_client.hh:8:1: 错误:expected class-name before ‘{’ token    代码:class ZSP_IPC_Proxy_Client : public ZSP_IPC_Host

2017-01-17 11:10:43 415

转载 c++ api地址

c++ api地址:http://en.cppreference.com/w/

2017-01-17 11:09:50 310

转载 sourceinsight设置

sourceinsight设置:http://jingyan.baidu.com/article/e2284b2b5b79e5e2e7118d6e.html

2017-01-17 10:53:40 364

原创 工具介绍

将linux虚拟机目录映射为本地磁盘 :sftpdrive

2017-01-16 09:12:23 314

转载 打印结构体偏移

转载自:http://blog.csdn.net/kelsel/article/details/53506283#define OFFSET(x, y) &((x *)0)->ystruct TestStruct { int mVar1; int mVar2; int mVar3;};void OffsetTestStruct(){  fprintf(stder

2017-01-06 10:22:22 383

转载 X86-64寄存器和栈帧

X86-64寄存器和栈帧2016-05-08 21:42 423人阅读 评论(0) 收藏 举报 分类:x86汇编(5) 目录(?)[+]概要说到x86-64,总不免要说说AMD的牛逼,x86-64是x86系列中集大成者,继承了向后兼容的优良传统,最早由AMD公司提出,代号AMD64;正是由于能向后兼容,AMD公司打了一

2017-01-04 15:04:49 5603

转载 汇编学习1--函数调用过程

一、函数调用过程(ebp,esp) #include int func(int param1 ,int param2,int param3){        int var1 = param1;        int var2 = param2;        int var3 = param3;         printf("var1=%d,var2

2017-01-04 11:17:18 1449

转载 使用libxml2

http://www.blogjava.net/wxb_nudt/archive/2007/11/18/161340.html

2016-12-27 15:21:09 195

转载 C++中调用 C静态函数库的方法

C++中调用 C静态函数库的方法首先,编写静态库函数/* player.h */#ifndef __PLAYER_H#define __PLAYER_H void player_open(char* path); #endif /* player.c */#include"pla

2016-12-21 16:49:09 1782

转载 libevent多线程

使用libevent进行多线程socket编程demo时间 2015-02-10 22:03:00  博客园精华区原文  http://www.cnblogs.com/james6176/p/4285018.html主题 Socket libevent 多线程最近要对一个用libevent写的C/C++项目进行修改,要改成多线程的,故做了一些学习和研究。

2016-12-21 11:42:19 2786

转载 apache+svn

apache+svn:一。安装svn    1.yum -y install apr apr-util httpd httpd-devel subversion mod_dav_svn mod_auth_mysql    2.输入rpm -ql subversion查看安装位置    3.创建svn版本库目录:mkdir -p /var/svn/svnrepos    4.

2016-12-08 14:45:26 287

转载 ubuntu系统

设置代理:方法一:  如果只是想临时使用http代理,可以在使用apt-get之前于终端下输入:exporthttp_proxy="http://用户名:密码@代理IP:代理端口"方法二:(方法一的持久化)  如果希望apt-get与其它应用程序都可以一直使用http代理,可以这样:   在终端下编辑~/.bashrc文件:  vim ~/.bashrc

2016-11-23 18:42:50 294

原创 linux ftp命令

linux是ftp客户端。向服务器发送文件root@freewaf:/tmp# ftp 192.168.137.1ftp> lcd /var/www/                       //进入到linux本机目录Local directory now /var/wwwftp> !dir                                      //查

2016-11-10 14:54:25 384

转载 linux虚拟机方法收集

inux下安装vmwaretools首先选择 虚拟机 >> 客户机 >> 安装/升级vmwareToolscd /media装载cd:mount /dev/cdrom /media提示mount:block device /dev/sr0 is write-protecter, mounting read-onlycd /find . -name VMware*cp VMwareT

2016-11-10 14:04:43 168

转载 c++调试

利用GDB进行多线程调试2016-08-30 23:37 343人阅读 评论(0)收藏举报分类: gdb/gcc/makefile(15) 一、多线程调试多线程调试重要就是下面几个命令:info thread 查看当前进程的线程。 thread 切换调试的线程为指定ID的线程。 break file.c:100

2016-11-09 10:14:49 204

转载 c++11 智能指针

1.多态下使用class parent{public: parent() { cout << "parent constructor" << endl; } virtual void showinfo() { cout << "parent info" << endl; } ~parent()

2016-11-07 17:43:51 360

原创 c++11使用

在gcc中加入-std=c++11.编译错误1  error: ‘shared_ptr’ is not a member of ‘std’  std::shared_ptr q_handle = make_shared();  解决:gcc中加入-std=c++11,如cc -g -std=c++11 -o xxx编译错误2 unable to find string li

2016-11-04 18:20:33 1263

转载 c++命名规范

属性部分: 全局变量 g_ 常量 c_ c++类成员变量 m_ 静态变量 s_类型部分:指针 p 函数 fn 无效 v 句柄 h 长整型 l 布尔 b 浮点型(有时也指文件) f 双字 dw 字符串 sz 短整型 n 双精度浮点 d 计数 c(通常用cnt) 字符 ch(通常用c) 整型 i(通常用n) 字节 by

2016-11-04 16:17:00 171

原创 c++资料源

c++标准库 cppreference

2016-11-04 16:16:22 182

原创 c++编译错误

1.undefined reference to 未定义的引用。需要gcc使用-lxx库,如gcc -lnfnetlink2.test.c:9:21: error: storage size of ‘qb’ isn’t known struct nfq_q_handle qb;  将nfq_q_handle改为nfq_q_handle*

2016-11-03 15:42:07 347

转载 linux进程学习

一旦父进程长期运行,而又没有显示wait或者waitpid,同时也没处理SIGCHLD信号,这个时候init进程,就没办法来替子进程来收尸。这个时候,子进程就真的成了”僵尸“了。

2016-11-02 14:50:43 182

原创 centos 系统命令

查系统版本:cat /etc/redhat_release

2016-11-02 14:49:28 228

转载 算法

KMP算法c++实现:http://blog.csdn.net/gdly2010/article/details/52970988

2016-10-31 11:29:16 258

原创 线程锁

对于一个线程读,一个线程写的情况要加锁。一.互斥量 锁分为动态锁,通过malloc生成。需要调用pthread_mutex_init和pthread_mutex_destory来初始化和销毁。静态锁pthread_mutex_t mutexa=PTHREAD_MUTEX_INITIALIZER.不用初始化和销毁。1.线程锁函数pthread_mutex_init(pthread_m

2016-10-28 14:29:55 261

原创 linux 线程学习

一.线程创建pthread_create(tid,NULL,fun,void*arg) 正常返回0.void * fun(void*arg);二.线程终止任意线程调用了exit,_Exit ,_exit.那么整个进程就会终止。        单个线程退出:1.线程函数中 return或pthread_exit, 2.被其他 线程取消 调用pthread_concel(pid)

2016-10-27 16:39:58 223

转载 NFQUEUE抓包

nfqueue和C的libipq比起来,支持python的nfqueue会显得强大很多,特别是和scapy结合起来用的时候。首先需要说明的是在iptables中的target除了之前提到的五项(ACCEPT,DROP,RETURN,QUEUE,other_chain)之外,还有一个叫NFQUEUE,它是QUEUE的扩展。相比于QUEUE,它可以由用户指定不同的queue numbe

2016-10-27 15:27:04 4351

转载 宏定义 日志输出

#define DEBUG(format,...) printf("File: "__FILE__", Line: %05d: "format"/n", __LINE__, ##__VA_ARGS__)  #else  #define DEBUG(format,...)  #endif  int main() {      char str[]="Hello World";  

2016-10-27 11:35:01 413

转载 recv send处理

读数据的时候需要考虑的是当recv()返回的大小如果等于请求的大小,那么很有可能是缓冲区还有数据未读完,也意味着该次事件还没有处理完,所以还需要再次读取:while(rs){buflen = recv(activeevents[i].data.fd, buf, sizeof(buf), 0);if(buflen {    // 由于是非阻塞的模式,所以当errno为EAGA

2016-10-26 19:50:03 268

原创 linux 定时器 timefd

//创建定时器,1秒执行一次int create_timer(){int ret = 0;//创建定时器,使用绝对时间    struct timespec now;    ret = clock_gettime(CLOCK_REALTIME,&now);    if(ret     {    printf("clock gettime fail:%s\n",s

2016-10-26 19:33:58 1479

转载 epoll event 处理

epoll events (2013-05-16 18:33:32)转载▼标签: it分类: socketepoll 事件的检测1.epoll 事件中发现就EPOLLIN , EPOLLOUT , EPOLLPRI可以用.EPOLLERR 和 EPOLLHUP什么情况下才能监测出这种问题啊.

2016-10-26 10:46:06 1165

转载 vim 命令常用

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky :%/\//\\/g 将所有/替换为\

2016-10-26 10:45:13 141

原创 epoll初次使用

epoll模式 server端,使用gdb调试,没有任何客户端连接的情况下.epoll_wait就收到listenfd的事件。这种现象是因为listenfd的epollevent使用了ev.events = EPOLLIN|EPOLLOUT;导致写事件产生。写事件是只要缓冲区可写就触发。EPOLLOUT应该改为EPOLLET.事件值:EPOLLIN:1EPOLLOUT:

2016-10-25 15:42:23 191

空空如也

空空如也

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

TA关注的人

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