c++ - for循环条件的性能差异?

标签 c++ loops logical-operators comma-operator

我有一个简单的问题,主要是出于好奇。

这两行代码有什么区别? (在 C++ 中)

for(int i = 0; i < N, N > 0; i++)

for(int i = 0; i < N && N > 0; i++)

条件的选择完全是任意的,我只对 , 和 && 的区别感兴趣。

无论如何我都不是编码的初学者,但我从来没有为逗号运算符烦恼过。

是否存在性能/行为差异或纯粹是审美差异?

最后一点,我知道有比条件运算符更高效的鱼苗,但我只是好奇。放纵我。

编辑 感谢您的回答。

事实证明,提示此问题的代码以我所描述的方式误用了逗号运算符。我想知道有什么区别以及为什么它不是 && 运算符,但它只是写错了。我不认为它有什么问题,因为它工作得很好。谢谢你帮我理顺。

最佳答案

使用这样的逗号只会放弃第一个条件

逗号运算符的意思是“按此顺序运行这些语句,并取最后一个的值”。

关于c++ - for循环条件的性能差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1094918/

相关文章:

c++ - 开发跨平台 C++11 代码

c++ - 为什么 boost.log 在 Windows XP 上会崩溃?

c++ - 在 for 循环中重新声明对象 - C++

javascript - 循环时如何在Vue Js中显示特定范围的数字?

javascript - 将枚举对象转换为数组在 javascript 中返回额外的对象

python - 检查两个条件是否为真最快的方法是什么?

math - 使用推理规则证明逻辑运算

c++ - getenv ("LINES") 在 Windows 上不起作用

c++ - 编译问题相等/不等运算符

检查 C 中的位 - 错误答案?