C++条件语句(语法正确)
C++ Conditional Statement (Correct Syntax)
if (a && b)
和if ( (a) && (b) )
一样吗?如果不是,两者之间有什么区别?
一般来说,
它们是不一样的。
让我们假设 a 和 b 是一些表达式。例如,a 是表达式 x += z
,b
是单个变量y
现在考虑以下代码
#include <iostream>
using namespace std;
int main()
{
int x = -1;
int y = 1;
int z = 2;
// x += z corresponds to a
// y corresponds to b
if ( x += z && y ) std::cout << "( x += z && y ) is equal to true" << std::endl;
else std::cout << "( x += z && y ) is equal to false" << std::endl;
x = -1;
if ( ( x += z ) && ( y ) ) std::cout << "( ( x += z ) && ( y ) ) is equal to true" << std::endl;
else std::cout << "( ( x += z ) && ( y ) ) is equal to false" << std::endl;
return 0;
}
输出为
( x += z && y ) is equal to false
( ( x += z ) && ( y ) ) is equal to true
在这种情况下,两者是相同的。
相关文章:
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- 1d 智能指针不适用于语法 (*)++
- 助记符和指向成员语法的指针
- 有人能分解一下这个c++模板的语法吗
- C++避免重复声明的语法是什么
- 在没有太多条件句的情况下,我如何避免被零除
- QMetaObject invokeMethod的基于函数指针的语法
- 基于多个条件处理地图中的所有元素
- 条件constexpr函数
- 无论条件是否为true,if总是在c++中执行
- 我可以使用条件运算符初始化C风格的字符串文字吗
- C++多个正则表达式条件语法
- OpenMP 条件并行化 - 并行部分中 if 子句的语法
- 条件中的指针语法
- 获取错误makefile:45:条件中的语法无效.停止
- C++条件语句(语法正确)
- 这个奇怪的条件运算符语法是什么
- 条件运算符语法
- 奇怪的条件语法
- while 循环条件中的语法是什么