- 博客(9)
- 收藏
- 关注
原创 Redis安装与源码调试
官网下载:http://redis.io/download1.安装Redis# wget http://redis.googlecode.com/files/redis-2.6.14.tar.gz# tar xzf redis-2.6.14.tar.gz# cd redis-2.6.14# makemake命令执行完成后,会在src目录下生成5个可执行文件,分别是redis
2013-07-27 09:12:35 11375 4
原创 valgrind Massif
nginx源码学习是一个痛苦又快乐的过程,下面列出了一些nginx的学习资源。 首先要做的当然是下载一份nginx源码,可以从nginx官方网站下载一份最新的。看了nginx源码,发现这是一份完全没有注释,完全没有配置文档的代码。 现在你最希望要的是一份注释版的nginx源码,可以从下面的链接中下载一份:https://github.com/jianfengye/nginx
2013-07-15 12:01:00 10014 2
原创 GDB使用总结
一:列文件1. List (gdb) list line1,line2 二:执行程序 要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符()和外壳通配符(*、?、[、])在内。 如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。 利用set args 命令就可以修改发送给程序
2013-07-30 15:48:38 3250
原创 深度分析typedef--定义自己的数据类型
最近在看redis源码的时候看到Ae.h的时候看到如下源码不理解:/* Types and data structures */typedef void aeFileProc(struct aeEventLoop *eventLoop, int fd, void *clientData, int mask);typedef int aeTimeProc(struct aeEventLoop
2013-07-25 15:59:07 1924
原创 C语言Free时报错HEAP CORRUPTION DETECTED
char *k1;k1 = (char *) malloc(4*sizeof(char));v1 = (char *) malloc(4*sizeof(char)); strcpy(k1,"abcd");free(k1); 在linux下不会报错,但是在VC++环境会报错:HEAP CORRUPTION DETECTED 出现这个错误的原因一般都是操作new申请的内
2013-07-23 22:36:37 3157
原创 二进制实用程序(objdump, readelf,ar, nm等)
GNU 二进制实用程序Binutils (GNU binary utilities)包括:objdump、readelf、addr2line、strip、ar、nm、ldd、ngprof、gcov等。一。 objdump - 显示二进制文件信息objdump可以根据目标文件来生成可读性比较好的汇编文件。常用的命令如下:gcc -g3 test.c -o test.o objdump
2013-07-14 20:53:52 2097
原创 GCC编译选项--创建与使用库
编译程序时,-l 与-L和-Icc t.c -lmysqlclient -L /usr/lib/mysql -I/usr/include/mysql-l 连接共享库 mysqlclient 吧-L lib 位置-I #include ; xxxx.h 位置-l表示:编译程序到系统默认路进搜索,如果找不到,到当前目录,如果当前目录找不到,则到LD_LIBRARY_PATH等环
2013-07-14 20:01:28 1247
原创 Makefile
make报错:*** 遗漏分隔符 (您的意思是用 TAB 代替 8 个空格?)。 停止。修改办法:“空格”“空格”@ 换为 "Tab"@
2013-07-14 19:10:16 1458
原创 结构体中定义函数指针
结构体指针变量的定义,定义结构体变量的一般形式如下:形式1:先定义结构体类型,再定义变量struct结构体标识符{成员变量列表;…};struct 结构体标识符 *指针变量名;变量初始化一:struct结构体标识符 变量名={初始化值1,初始化值2,…, 初始化值n };形式2:在定义类型的同时定义变量struct结构体标识符{成员变量列
2013-07-10 18:54:20 14818
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人