求高手围观解决思路
求高手围观
做了一个基于对话框的程序,其中有一个button的函数,times是一个全局变量,初始化0。
void。。。()
{
。。。
for(int i=times;i<num;i++)
{
。。。
if (condition)
{
times=i;
。。。
return ;
}
}
}
在condition满足之后跳出函数,比如此时的i=10,下次进去函数时,i应该从10开始吧
为什么一直都实现不了???
------解决方案--------------------
下次进去之前,先把i打出来,看看是多少,说不定别的地方改过times呢。
------解决方案--------------------
全局变量不会再次初始化,但是不知道你的程序的详情,你单步调试一下,每一步看看times的值是否如你所想,如果不是,就看看在哪里出现的值是你认为异常的
------解决方案--------------------
跟踪下就知道了。times如果只在这里用,应该不用全局变量,用静态
static int times
------解决方案--------------------
声明times为静态整型变量,而不是全局变量。
做了一个基于对话框的程序,其中有一个button的函数,times是一个全局变量,初始化0。
void。。。()
{
。。。
for(int i=times;i<num;i++)
{
。。。
if (condition)
{
times=i;
。。。
return ;
}
}
}
在condition满足之后跳出函数,比如此时的i=10,下次进去函数时,i应该从10开始吧
为什么一直都实现不了???
------解决方案--------------------
下次进去之前,先把i打出来,看看是多少,说不定别的地方改过times呢。
------解决方案--------------------
全局变量不会再次初始化,但是不知道你的程序的详情,你单步调试一下,每一步看看times的值是否如你所想,如果不是,就看看在哪里出现的值是你认为异常的
------解决方案--------------------
跟踪下就知道了。times如果只在这里用,应该不用全局变量,用静态
static int times
------解决方案--------------------
声明times为静态整型变量,而不是全局变量。