[求助] 哪位大神帮忙解释一下下面一段程序?

zhanghao8911   2012-5-4 08:53 楼主
while(1)
        {
       
        tom=(long)TBC();
        if((tom<0)|(tom>511))
        { dis1[2]='b';
           dis1[3]='a';
                dis1[4]='d';
                 }

        dis1[0]='w';
        dis1[1]='d';
        if((tom>=0)&(tom<=511))
        {
        dis1[2]=':';
        dis1[3]=(tom%1000)/100+0x30;
        dis1[4]=(tom%100)/10+0x30;
        dis1[5]=(tom%10)+0x30;
        dis1[6]='C';}                                                                          
        lcd_dispay(dis2,dis1);
    //lcd_delay(10);
        }
我的问题是:if((tom<0)|(tom>511))和if((tom>=0)&(tom<=511))是什么意思?为什么要这么用呢?

回复评论 (4)

写错了吧,应该是if((tom<0)||(tom>511))和if((tom>=0)&&(tom<=511))
点赞  2012-5-4 09:27
yy说的对,就是个区间判断啊,你是啥不明白?
点赞  2012-5-4 10:31

回复 沙发 zca123 的帖子

我也是这么认为的。但是按照这样修改之后,输出结果不对。这是我不明白的地方
点赞  2012-5-4 13:36

回复 板凳 dingwei1983 的帖子

我看得出来是区间判断,但是修改之后的输出结果不对啊
点赞  2012-5-4 13:36
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复