
有如下一段代码,只要把第3行和第四行注释掉,运行到第五行时,wm的值就会被修改。之前已经调用过一次wm=MUI_GetWm(data->parent_id);wm是一个指针,指向一个结构体。 /* 1 */ if(save_flag[(wm->id)]!=1){ /* 2 */ save_flag[(wm->id)]=1; /* 3 */ temp = wm->context.start_id; /* 4 */ wm=MUI_GetWm(data->parent_id); /* 5 */ msg_buf[MSG_HEAD_LENGTH]=temp; /* 6 */ msg_buf[MSG_HEAD_LENGTH+1]=0; /* 7 */ msg_buf[MSG_HEAD_LENGTH+30]=wm->id; /* 8 */ msg_buf[MSG_HEAD_LENGTH+31]=DATA_SAVE_FLASH; /* 9 */ M_FlashEraseSector(DATA_FLASH_BASE/FLASH_SECTOR_SIZE+wm->context.start_id); /* 10 */ M_FlashBufferWrite(msg_buf+MSG_HEAD_LENGTH, DATA_FLASH_BASE+wm->context.start_id*FLASH_SECTOR_SIZE, data->len+DATA_PARAMS_SIZE); /* 11 */ } |
评分
查看全部评分
回头我再试试,多谢了
我这也是为了缩减代码量
评分
查看全部评分
我开了优化