当前位置: 技术问答>linux和unix
读驱动程序的一些问题关于#if,#ifdef等(初学)
来源: 互联网 发布时间:2015-07-11
本文导语: 在读驱动程序的时候经常会碰到 1、既然if后面的表达式已经是0了,为什么还有写这段代码? #if 0 …… #endif 2 、类似第一个问题,在很多的时候会有 #ifdef HOOK_FOR_DRAG …… #endif 但是在整个源程序中都没有看到 #...
在读驱动程序的时候经常会碰到
1、既然if后面的表达式已经是0了,为什么还有写这段代码?
#if 0
……
#endif
2 、类似第一个问题,在很多的时候会有
#ifdef HOOK_FOR_DRAG
……
#endif
但是在整个源程序中都没有看到
#define HOOK_FOR_DRAG ……
那这段程序在整个程序里面起什么作用呢?
如果大家有兴趣的话可以帮我看看http://community.csdn.net/Expert/topic/3242/3242898.xml?temp=.3224604
里面的源程序,当然那里面少了一点点,我的qq是:55238208我看的真是一头雾水啊!谢谢你的回答!
1、既然if后面的表达式已经是0了,为什么还有写这段代码?
#if 0
……
#endif
2 、类似第一个问题,在很多的时候会有
#ifdef HOOK_FOR_DRAG
……
#endif
但是在整个源程序中都没有看到
#define HOOK_FOR_DRAG ……
那这段程序在整个程序里面起什么作用呢?
如果大家有兴趣的话可以帮我看看http://community.csdn.net/Expert/topic/3242/3242898.xml?temp=.3224604
里面的源程序,当然那里面少了一点点,我的qq是:55238208我看的真是一头雾水啊!谢谢你的回答!
|
有些是为了调试用的,
有些标号是系统在别的地方定义了,如__KERNEL__...
有些标号是系统在别的地方定义了,如__KERNEL__...
|
在很多的时候会有
#ifdef HOOK_FOR_DRAG
……
#endif
但是在整个源程序中都没有看到
#define HOOK_FOR_DRAG ……
那这段程序在整个程序里面起什么作用呢?
你再查查编译该文件的相关Makefile,里边可能有-DHOOK_FOR_DRAG这样的宏,如果是这样,这些宏一般用做调试用,这是常用的调试手段。
#ifdef HOOK_FOR_DRAG
……
#endif
但是在整个源程序中都没有看到
#define HOOK_FOR_DRAG ……
那这段程序在整个程序里面起什么作用呢?
你再查查编译该文件的相关Makefile,里边可能有-DHOOK_FOR_DRAG这样的宏,如果是这样,这些宏一般用做调试用,这是常用的调试手段。