- for(i = 0; i< SENSORNUM ;i++)
- {
- if(Lost[i] < 24)
- {
- Lost[i] ++;
-
- }
- else
- {
- SensorCode[i][0] = 0;
- SensorCode[i][1] = 0;
- SensorCode[i][2] = 0;
- SensorCode[i][3] = 0;
- SensorCode[i][4] = 0;
- SensorCode[i][5] = 0;
-
- SensorData[i].Tem = 0;
- SensorData[i].Hum = 0;
- SensorData[i].Bat = 0;
- SensorData[i].RSSI = 0;
- }
- }
最近写了一个程序,里面有上面这样一段代码,作用是当某一个条件不满足时进行计数,达到指定次数后把另外的一组数清零。按照我的思路,lost
数组里的数不会大于24,可是仿真的时候经常发现lost里面有很大的数,而且明显技术的时间还没有到呢。比如设备复位后,在初始化完成后设断点,此时看lost数组里面的数还都是0,接下来在lsot++处设置断点,全速运行到断点处的时候lsot数组里面有一些数就已经不是0了。而且是很大的数。
大家有没有遇到过类似的情况?或者给想 想有没有其他的可能~!
第一次运行到断点处的样子
谢谢
本帖最后由 jishuaihu 于 2016-3-21 10:17 编辑