c++ - !(variable) 和 (!variable) 之间的区别

标签 c++ c if-statement

在 C 或 C++ 中,在 if 语句中使用 !(variable)(!variable) 之间是否有决定性的区别,例如:

if (!(variable)) { ..//做某事 }

if (!variable && !(variable2)) { ..//做某事 }

这样一个版本会提供与另一个版本不同的结果?

最佳答案

一切都与操作顺序有关。使用 !(variable) 将评估括号内的所有条件,然后执行 ! (or NOT) 来确定是否输入 if 语句 where-as (!variable 将专门针对变量本身执行 NOT。

所以在这种情况下:

!(true && false) = true
!(true && true) = false
(!true && !false) = false
(!true && true) = false
!(true && !false) = false

...等等

希望这对您有所帮助。

关于c++ - !(variable) 和 (!variable) 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5820273/

相关文章:

c - 我们如何在C语言中将list(Python中的)函数实现为数组?

c++ - 编译麻烦c转c++反

php - 仅当两个字段同时为空时,Mysql 才更新字段

c++ - 如何在 xCode 中为您的 iPhone 应用程序编译 C++?

c++ - 为 C++ 中的应用程序最佳使用而打开的并行套接字/TCP 连接数

java - 在 JNI 函数(Android)之外从 C 调用 java 中的函数?

if-statement - Fortran IF 循环

javascript - 除非 vs if 在 Javascript 中使用感叹号?

c++ - 如何声明紧凑型大于 CPU 机器?

c++ - 我如何使用 Qt Creator 将一个对象的值从一个窗口获取到另一个窗口的类中?