C语言中双感叹号的作用
Posted 正在起飞的蜗牛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中双感叹号的作用相关的知识,希望对你有一定的参考价值。
1、C语言中双感叹号的作用
(1)感叹号的作用:感叹号是逻辑运算符,表示逻辑非,也就是把真变成假,把假变成真;
(2)在C语言中,0值表示假,非0值都是真,所以感叹号会把非0值变成0,而把0值变成1;
(3)双感叹号的作用就是把非0值变成1,0还是0。
2、内核中双感叹号使用实例
//这是input子系统中按键相关的代码
//value表示按键的值
static inline void input_report_key(struct input_dev *dev, unsigned int code, int value)
input_event(dev, EV_KEY, code, !!value);
(1)按键只有两个状态:按下和弹起,这符合布尔变量,我们可以用0和1来表示;
(2)但是在函数中value是int型,value可以传递进来任意的整数,但是我们希望实际传递下去的是0和1,所以就对value变量使用双引号;
以上是关于C语言中双感叹号的作用的主要内容,如果未能解决你的问题,请参考以下文章