Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1337459
  • 博文数量: 482
  • 博客积分: 13297
  • 博客等级: 上将
  • 技术积分: 2890
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-12 16:25
文章分类

全部博文(482)

文章存档

2012年(9)

2011年(407)

2010年(66)

分类: LINUX

2011-05-12 21:27:53

今天在看PulseAudio源码的时候,看到一个:

c->server_specified = !!server;

刚开始,没怎么在意,还以为搞两个非有什么意思,等于啥都没有嘛,然后看了一下server_specified的类型,是bool型的(不是0,就是1),才明白,原来它不是想取server的具体值,而是server只要不是0,那么server_specified的值就为1,否则都是0,蛮好玩的。

如果写成语句:

if (server)
  c->server_specified = 1;
else 
  c->server_specified = 0;

这样就太麻烦了,一句话就能搞定,看样自己还是水平不够阿。

====
阅读(998) | 评论(1) | 转发(1) |
给主人留下些什么吧!~~

yuweixian42302011-05-15 09:28:07

学习了