您正在查看: 6Green理工人 发布的文章
jQuery顶部按钮实现
http://www.scrolltotop.com/国外的一个网站,提供多达几十种的按钮实现,很好的参考!如下:阅读全文
linux用户态程序调试总结
Linux下的用户空间调试工具和技术,它们用来分析用户空间的问题相当有用,主要有下面几种:1.printf打印2./proc查询3.strace和ltrace4.Valgrind5.gdb6.splint静态分析工具7.prof/gprof性能分析工具8.ElectricFence内存调试9.binutil系列工具<h3 id="1">1.printf打印&l...阅读全文
Makefile经典模版,解决头文件依赖
一、基础知识在进行下一步之前,首先需要了解make的执行步骤:1、读入Makefile
2、读入被include的其它Makefile
3、初始化Makefile中的变量
4、推导隐晦规则,并分析所有规则
5、为所有目标创建依赖关系链
6、根据依赖关系,决定哪些目标需要重新生成
7、执行生成命令
二、解决头文件依赖的Makefile模版源文件目录结构:[root@localhost hell...阅读全文
字符串匹配-BruteForce暴力匹配
BF(Brute Force)算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串T的第一个字符进行匹配,若相等,则继续比较S的第二个字符和 T的第二个字符;若不相等,则比较S的第二个字符和T的第一个字符,依次比较下去,直到得出最后的匹配结果。BF算法是一种蛮力算法。算法思想:1、依次从主串的首字符开始,与模式串逐一进行匹配;2、遇到失配时,则移到主串的第二个字符,将其...阅读全文
gdb带参数调试,until、watch用法
1、程序运行参数。set args 可指定运行时参数。(如:set args 10 20 30 40 50) show args 命令可以查看设置好的运行参数。(如:set args 10 20 30 40 50)
还有一种方法是:run args 之后再进行调试;2、until设置只能在循环开始处设置有效;3、watch监视变量发生,类似条件断点,也可以watch一个条件表达式;watc...阅读全文
正确的使用snprintf
1、原型 #include <stdio.h>
int printf(const char *format, ...);
int fprintf(FILE *stream, const char *format, ...);
int sprintf(char *str, const char *format, ...);
int snprintf(c...阅读全文
open和_open文件控制标志
1、Windowsdefine O_RDONLY 0x0000define O_WRONLY 0x0001define O_RDWR 0x0002define O_APPEND 0x0008define O_CREAT 0x0100define O_TRUNC 0x0200define O_EXCL ...阅读全文
GNU结构体中的0长数组使用
在标准 C 和 C++ 中,不允许用 0 长度数组,但在 GNU C 中,却可以定义 0 长度数组;struct line
{
int length ;
char contents[0];
};
0 长度数组不占有空间,从打印 sizeof (struct line) 可以看到这个结构体的长度为 4,这 4 字节空间属于整型量 length 。那么结构体里最后的 0 长度...阅读全文
linux内核list.h之链表hlist
1、数据结构//hash桶的头结点
struct hlist_head
{
struct hlist_node *first;//指向每一个hash桶的第一个结点的指针
};
//hash桶的普通结点
struct hlist_node
{
struct hlist_node *next, **pprev;
};
next指向下一个结点的指针
pprev指向上一个结点的ne...阅读全文
有关void *、(void (*)()) 、void (*)()
void指针是空类型指针,它不指向任何类型,即void指针仅仅是一个地址,所以空类型指针不能进行指针运算,也不能进行间接引用(因为指针运算和间接引用都需要指针的类型信息)。例如: void * p; //仅仅表示p存放一个地址
p++; //error:+、-运算离不开指针类型
*p=20.5; //error:访问p指向的变...阅读全文