while循环检查由逗号分隔的两个值

时间:2015-04-23 12:14:51

标签: c while-loop

我遇到过一些看似这样的代码。

while(1, N) 

其中N可以是0到100之间的整数。

有人可以告诉我们如何使用while循环。

2 个答案:

答案 0 :(得分:3)

根据C11标准文件,第6.5.17章,逗号运算符,

  

逗号运算符的左操作数被计算为void表达式;它的评估与右操作数之间存在一个序列点。然后评估右操作数;结果有其类型和价值。

所以,基本上,

while(1, N)

相同
 while(N)

答案 1 :(得分:2)

while(1, N)

相当于

while(N)

,因为逗号运算符产生右操作数的值。所以使用第一种形式是没用的。

如果你想编写一个从1N(包括)的循环,你可以使用for循环:

for (int i = 1; i <= N; i++)