怎么跳不出While语句?

[复制链接]
 楼主| 火箭球迷 发表于 2010-7-27 16:36 | 显示全部楼层 |阅读模式
while(!sendflag)
       {
        if(sendflag==0)
        {
         dot=1;
        }
        else
        {
         dot=0;
        }
      }
我用的是lpc2138,在程序调试时看到sendflag=1(通道串口接收修改此值),但是始终执行if(sendflag==0) {dot=1;}语句,也跳不出while语句,不知是怎么回事?
dfsa 发表于 2010-7-27 16:58 | 显示全部楼层
可以这样修改一下:
hello while(!sendflag)
       {
        if(sendflag==0)
        {
         dot=1;
         break;///////////

        }
        else
        {
         dot=0;
        }
      }
dfsa 发表于 2010-7-27 16:58 | 显示全部楼层
修改完后应该可以跳出来了
X-Hawk 发表于 2010-7-27 17:04 | 显示全部楼层
多半是 sendflag 没加volatile修饰
gxgclg 发表于 2010-7-27 21:56 | 显示全部楼层
同意楼上的说法,加上试试看吧
hsbjb 发表于 2010-7-28 07:41 | 显示全部楼层
不知楼主跳出来没,按照2楼的方法应该是可以跳出来的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:姚明的铁杆球迷

150

主题

3470

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部
个人签名:姚明的铁杆球迷

150

主题

3470

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部