地:Linux系统内核中判断大小的宏
2008-3-12 7:59:04 来源:PC235.COM 您有问题?请联系我们关 键 词:地:Linux系统内核中判断大小的宏
Min和Max宏:
|
不是感觉跟我们用的有些不一样啊:
(void) (&_x == &_y);
(void) (&_x == &_y)这句话本身都执行程序来讲完全是一句废话,它的作用在于,本身我们无法做这样的操作typeof(_x)==typeof(_y),所以故意判断他们2个的地址指针是否相等,显然是不可能相等,但是如果_x和_y的类型不一样,其指针类型也会不一样,2个不一样的指针类型进行比较操作,会抛出一个编译警告。也就是说char *p; int *q; 然后p==q;,这个判断因为一个是char*一个是int*,会在编译时产生一个warning。巧妙就巧妙在这里。
由于内核是很多开发着一起开发的,其中还有一些其他的实现,就跟我们平常用的一样:
#define min(a,b) (((a) < (b)) ? (a) : (b))
试想:
min(++a,++b) ==> ((++a)<(++b))?(++a):(++b)
是不是就有问题了,传入的参数被加了两次。
地:Linux系统内核中判断大小的宏文章结束
更多内容请看 电脑系统 > > Linux FreeBSD专题【最新推荐:地:Linux系统内核中判断大小的宏】
【频道更新】
【相关文章】
E Linux Enterprise 11宣布开发计划
察:微软宣布支持Eclipse开源项目
发布最新服务器产品搭配Ubuntu Linux
ntu Linux系统已开始支持SELinux技术
堂:Linux下C语言编程的注意事项
ux操作系统下TCP keepalive属性查看
巧:在Linux系统中查找文件的方法
析:Linux系统启动过程的故障排除
堂:Linux操作系统的软件安装方法
析:Linux系统下U盘汉字乱码问题
令:查看Linux磁盘剩余空间方法介绍
Linux ext2/ext3文件系统详解
明:Linux系统终端scp命令的用法
堂:当前Linux系统运行的各种参数
堂:Linux系统下一些简单实用命令
理:Linux系统下临时文件TMP清理
析:找回丢失的Linux系统Grub密码
何不让Linux系统双击安装应用软件
ora Linux 8系统下JDK 6.0的配置方法
堂:Linux操作系统Shell基础知识
察:微软宣布支持Eclipse开源项目
发布最新服务器产品搭配Ubuntu Linux
ntu Linux系统已开始支持SELinux技术
堂:Linux下C语言编程的注意事项
ux操作系统下TCP keepalive属性查看
巧:在Linux系统中查找文件的方法
析:Linux系统启动过程的故障排除
堂:Linux操作系统的软件安装方法
析:Linux系统下U盘汉字乱码问题
令:查看Linux磁盘剩余空间方法介绍
Linux ext2/ext3文件系统详解
明:Linux系统终端scp命令的用法
堂:当前Linux系统运行的各种参数
堂:Linux系统下一些简单实用命令
理:Linux系统下临时文件TMP清理
析:找回丢失的Linux系统Grub密码
何不让Linux系统双击安装应用软件
ora Linux 8系统下JDK 6.0的配置方法
堂:Linux操作系统Shell基础知识