请教while (n--)问题

设 n=3
while(n--)
这时在循环体里面输出n的值是2、1和0

请问为什么会输出0这个值呢?

阅读 2.8k
4 个回答

这个问题我已经在C语言手册里面找到答案了,里面描述的很详细,大家如有遇到该疑惑,可以参看手册里面的:Expressions Increment/decrement operators 章节

最后一次循环,n-1时,n--=1,因此循环未结束,之后n变为0,被打印出来

这就是n--和--n的问题,因为n--是先执行了n再进行减1的,你可以自己试一下改成--n看看

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题