yujunkan 2018-08-07 08:11 采纳率: 0%
浏览 1380
已结题

关于32单片机 十进制转换二进制,保存至数组的问题

![图片说明]现在需要将一个十进制数转换为二进制数字并保存在数组里面。二进制数result是经过转换之后的数据,但是在保存在数组里面的时候除了点问题。debug模式下数组显示的都是0,不知道除了什么问题,请各位大神帮帮忙,谢谢

  • 写回答

2条回答

  • qq_35382284 2018-08-07 09:08
    关注

    n为要转换的目标十进制数,十进制数是int类型,占2或4个字节,-32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647,如果是unsigned int
    占2或4个字节,0 到 65,535 或 0 到 4,294,967,295,所以要注意区分是有符号整数还是无符号整数,如果是无符号整数,则以下函数输出正常,如果时有符号整数则要另外考虑:
    void fun(int n)
    {
    int s[32],i = 0;
    while(n)
    {
    s[i++] = n % 2;
    n /= 2;
    }
    for(i = i-1; i >= 0; i--)
    {
    printf("%d",s[i]);
    }
    printf("\n");
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题