1163028233 发表于 2021-4-30 20:34:11

想问下while里(!--x)是什么意思

#include<stdio.h>
int main(){
    int sum=0,x=5;
    do{
      sum+=x;
    }while(!--x);
    printf("%d\n",sum);
}
想问下while里(!--x)是什么意思,我看程序执行完sum+=x,也就是sum=0时,x=5,sum=sum+x=5,然后就跳出循环了。

wp231957 发表于 2021-4-30 20:37:06

本帖最后由 wp231957 于 2021-4-30 20:52 编辑

x等于0才循环

肖-肖 发表于 2021-4-30 20:47:56

本帖最后由 肖-肖 于 2021-4-30 20:50 编辑

首先! 是非运算符 --是自减运算符 两个都是自右向左的方向

所以是先--x x变为4 然后!4值为0了 所以循环就结束了


1163028233 发表于 2021-4-30 20:51:57

肖-肖 发表于 2021-4-30 20:47
首先! 是非运算符 --是自减运算符 两个都是自右向左的方向

所以是先--x x变为4 然后!4值为0了 所以循 ...

好的,谢谢
页: [1]
查看完整版本: 想问下while里(!--x)是什么意思