linux 应用编程
huashan358
这个作者很懒,什么都没留下…
展开
-
关于指针偏移
struct node { char a; int b; int c;};set_node(struct node *node1, struct node *node2){ char *p = (char *)node2; int *pint = NULL; *p = node2->a; printf("[%d]\n", *p); p+=4;原创 2011-11-26 06:50:50 · 417 阅读 · 0 评论 -
位的一些基本操作
/*把第 pos 位置1*/void set_bit(int pos, char *num){ unsigned char cval = 0x1; num[pos/8] |= cval }/*把第 pos 位置0*/void free_bit(int pos, char *num){ unsigned char cval = 0x1; num原创 2011-11-26 06:42:40 · 235 阅读 · 0 评论 -
打patch 命令
1.比较两个版本的不同之处diff 1.c 2.c >diffs 2.用patch命令更新文件1.cpatch 1.c diffs 3.用patch命令还原文件1.cpatch -R 1.c diffs原创 2012-02-02 20:29:07 · 304 阅读 · 0 评论 -
调试代码技巧1
命令如下ulimit -culimit -c unlimitedulimited -c 1073741824 ./a.out这个时候会生成内核core文件 file core* gdb -c core* ./a.out 这种方法可以调试进程异常终止,注意编译文件时gcc 要加-O2 -g 选项转载 2013-06-15 21:44:52 · 366 阅读 · 0 评论