当前位置:编程学习 > C/C++ >>

C语言中,while语句中如果有是 int y=10; while(--y);那么while中的判断条件是什么?

我的疑问是:--y可以写成是y=y-1;y=y;.这样就有了两个赋值表达式,那么到底是y=y-1做条件,还是y=y做条件呢?高手请解答下!
其他:while(--y)的意思是,因为你之前已经设了y=10,所以依次判断while(9)、while(8)、while(7)、while(6)、while(5)、while(4)、while(3)、while(2)、while(1)、while(0),只要括号里面的数字不为0,则表示判断条件为真,则while下面的循环体都会执行,while(0)表示判断条件为假,不执行循环体。
你的这个句子就相当于:
int y=9;
while(y>0)
{
循环体;
y--;
}/*这里写成y=9,是因为--y是先将y-1然后再取y的值*/
在C中,不为0的字母或者数字都表示真,即1,为0就表示假。 这里,先进行y = y-1,然后判断的条件就是 y != 0,也就是说,判断y自减1之后是否为0,不为0则为true,否则为false。
等价于
while(y){
//循环内容

--y;        //循环的其它内容完成后,对y进行自减1

}
希望可以解决你的疑问~~

上一个:c语言 编程 数据结构
下一个:C语言数组的基础例题 二分法 为什么输入2,,6,3,8,0,19不行 而别的行

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,