今天打错了,然后发现下面的代码可以编译成功:
#include <stdio.h>
int main()
{
int i;
for (i=0;1,2,3,4,5;i++)
printf("%d\n", i);
}
我不明白为什么
1,2,3,4,5
可以当作条件吗?
最佳答案
您的 for
条件是表达式 1,2,3,4,5
。此表达式使用 C's comma operator 求值并产生 5
。值 5
是一个有效的 bool 表达式,它为真,因此导致无限循环。
关于C的for循环中的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25077742/