找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1583|回复: 3
打印 上一主题 下一主题
收起左侧

C语言uchar型数组转换成十六进制字符串,求大神

[复制链接]
跳转到指定楼层
楼主
ID:740383 发表于 2020-9-12 15:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于uchar型数组转换成十六进制字符串的问题
比如像ary[]={11100010};
转化成11100010,=0x74
求大神
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:740383 发表于 2020-9-12 15:47 | 只看该作者
打错了0xE2
回复

使用道具 举报

板凳
ID:654028 发表于 2020-9-12 17:53 | 只看该作者
我只知道一个笨办法,感觉好麻烦啊,先算数组大小,是否为8的倍数,不是的话前面补0,然后用循环,除了开头需要补0的那几个,剩下的8个一组循环,然后前四个作为16进制的高位,后四个低位。然后就能输出。这是笨办法,肯定有大神 有简易的办法,我也是小白
回复

使用道具 举报

地板
ID:546770 发表于 2020-9-13 08:22 | 只看该作者
unsigned char i = 0,result = 0;
unsigned char ary[]={1,1,1,0,0,0,1,0};
    for(i = 0; i < 8; i++) {
        result |= arr[i] << (8 - i);
    }
你试试看对不对,思路大概就是这样!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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