#include
#include
using namespace std;
void main()
{
int i,y,x;
i=0;x=0;y=3;
while(i<91)
{
printf("原码数字\n");
while(x<3)
{
x++;
printf("加码数字\n");
}
x=0;
i++;
}
system("PAUSE");//暂YY停??
启动调试时输出时显示:
加码数字
加码数字
加码数字
原码数字
逐过程时输出时显示:
原码数字
加码数字
加码数字
这个问题真的头晕啊,我想遇到过这个问题的人一定超少,不知道有没有人能帮解答一下
i 没有初始化,所以程序的结果不确定。单步调试和直接运行初始的内存不同,结果不同也很正常。
i=0;我不是以经初始化了吗?这个是逻辑错误吧,跟初始化关系?
只要是大于74都不行,也许是我拿小刀杀牛了。
试了无数次,目前找到的答案是while(i<91)这个语句有问题,只要把91 改为74一切正常。这又是为什么呢?
要不然就是把x<3改成X<1也能正常运行,这下找到一点点出路了
不是什么累人的问题,就是单步调试一下,马上就看出来的
单步调试显示正常,调试是看不出问题的,这个可能是和控制台的一些机制有问题,代码超简单,又是最基础的控制台,所以说问题不简单