keil吧 关注:15,006贴子:30,394
  • 5回复贴,共1

可能是一个很基础的问题,以前没在意,现在突然遇到这个问题,就

只看楼主收藏回复

可能是一个很基础的问题,以前没在意,现在突然遇到这个问题,就想明白个透彻。
程序简单如下,把if三处简称012,这是个中断程序,控制按键按一下数码管显示加1,到100后显示--。问题是为什么012的顺序(6种)只有210时数码管到100才正常显示--,而其他顺序不是-0就是00,为什么??
这只是简单if结构啊搞不懂搞不懂逻辑上没问题啊。然后我用C++和MyEclipse上写了差不多的if结构,发现顺序怎么变结果都是正确的啊。也是说至少if结构是对的,或者说keil上的c语言有不同?
我记得当初初学if结构时,老师似乎说过最好按顺序来写,但是一直用到现在以来并没有出现过问题,所以没关注。
就想问清楚,这个和012顺序真的有关么?为什么啊?


IP属地:湖北来自Android客户端1楼2018-11-26 00:11回复
    按照图片中的程序没毛病。你的文字描述逻辑并不能很清晰地表述你的问题。


    IP属地:广东2楼2018-11-26 12:34
    回复(2)
      你的程序中
      SEG_CODE[]={0,1,2,3,4,5,6,7,8,9,-};
      这“-”是什么鬼,C语言可以吧运算符直接赋值给常量?


      IP属地:浙江3楼2018-11-29 16:49
      收起回复