今天遇到一个问题,if判断,应该相等却不能执行。 程序如下: . . . char adFlag; . . . void main (void) { ... while(1) { if(1 == adFlag) { _DINT(); if( max(svm1) > THMOVE ) //对svm特征值判断,是为运动状态 { MoveFlag1 = 1; StillFlag1 = 0; } else { MoveFlag1 = 0; StillFlag1 = 1; } if( max(svm2) > THMOVE ) . . . 后边修改过adFlag的值 if(100 == index) { index = 0; adFlag = 1; 看watch window里adFlag也变为1了,但是if那句执行不下去,为什么? |