找回密码
 注册
关于网站域名变更的通知
查看: 209|回复: 3
打印 上一主题 下一主题

求教C语言有符号char和无符号char问题

[复制链接]
  • TA的每日心情
    开心
    2022-1-29 15:03
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2022-3-24 11:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
           这个程序是一个数码管计数显示,最高位是0就不显示。图上标记的是一个有符号char j。现在是没问题的。我试过用unsigned char j,不过数码管快速闪烁一下就没有其他任何显示了。不知道用char j 为什么是对的。
    . b" O. w  ]* l% ?$ G      然后老师说char j从0溢出后就是-1,下面的条件就不会继续判断了。然后此处也有一个疑问,是不是j从5到0判断只执行一次,以后再也不执行了,还是其他意思呢?请大佬帮忙解答下,谢谢
    : x6 |6 \. f2 V* N9 y0 U7 e
    3 K. |) P5 u+ x3 w$ X
    数码管计数

    ) g2 X( o# a/ X6 b! B' B! B, Y, t

    5 W$ z+ N6 j' l4 v4 S5 Y" K9 f1 i1 s" f! D6 s+ f
  • TA的每日心情
    奋斗
    2022-1-21 15:15
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2022-3-24 13:16 | 只看该作者
    上面已经定义了,再定义肯定错误
  • TA的每日心情
    开心
    2022-1-29 15:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    3#
    发表于 2022-3-24 13:28 | 只看该作者
    因为第55行的for循环用到j>=0;j--' W9 u+ d( @1 E. ^
    前一步j=1,j>=0,循环继续,j--, ~, Q6 b5 h+ |( e. V
    下一步j=0,j>=0,循环继续,j--
    ( h+ K5 }+ R8 f  m后一步如果j是无符号,j=255,j>=0,循环继续,j--,死循环了
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2022-3-24 13:29 | 只看该作者
    这样写不是更好吗?for(j=5;j>1;j--)
    + U! ~4 r- T# G. I
    & w0 I* N: e+ H( x2 T( a    {
      J. e" J* X! l! C2 Q        if(buf[j]==0)6 D% C; C2 v0 D4 r" M1 d& q
                ledbuff[j]=0xFF;
    & a% }7 p2 G2 ~, w) L* d        else
    5 W% G, X, j' M4 K/ I/ p            ledbuff[j]=ledchar[buf[j]];
    7 {) E; _: l7 M    }
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-20 22:47 , Processed in 0.078125 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表