读书人

为啥是结果是2和0大侠们讲解下为什么

发布时间: 2013-11-05 14:40:42 作者: rapoo

为何是结果是2和0,大侠们讲解下为什么?
#include "stdafx.h"
#include <stdio.h>

int main()
{
int n=4;
while(n--)
{
printf("%d",--n);
printf("\n");
}
return 0;
}
[解决办法]
http://bbs.csdn.net/topics/370153775
仔细看看这个帖子吧!置顶帖!
[解决办法]
运行结果就是2和0啊,循环一共执行两次,第一次到printf前面是3,--n结果变成2,第二次是1,--几个变成0
[解决办法]
单步调试自己看下,while中的n判断值分别是4,2,0的时候,n--与--n的不同之处

版主给的链接讲的挺细致的
[解决办法]
while(n--) 判断执行完减一
[解决办法]
第一次--变成3,第二次--在前面,所以是-后的值为2,第三次--变成1,第四次变成0

读书人网 >C++

热点推荐