怎么样将十六进制数组按字节显示在编辑框中

C++语言 码拜 7年前 (2017-05-08) 1417次浏览
如int data[12]={0x03,0x43,0xFC,0x12,0xFF,0x63,0x61,0x72,0x00,0x00,0x00,0x00};
想在编辑框中以字节03,43,FC,12,FF,63,61,72,00,00,00,00形式显示出来,本人菜鸟,请稍微详细一点。
解决方案

20

这里有个函数,在每个数据转换后,添加‘,’就和你的需求一样了,供参考。

__CONST char g_digits[]  = "0123456789abcdefx0123456789ABCDEFX";
#   define g_DIGITS (&g_digits[17])
#   define hex2ascii(v) g_digits[v]
#   define HEX2ASCII(v) g_DIGITS[v]
int sm_hexs2string(char *ostr,i_uint8 *ihexs,int len)
{
    uint8   t,ch;
    int     i,index;
    for(index = i = 0; i < len; i++){
        ch = ihexs[i];
        t = (ch >> 4) & 0x0F; ostr[index++] = HEX2ASCII(t);
        t = (ch >> 0) & 0x0F; ostr[index++] = HEX2ASCII(t);
    }
    ostr[index] = "\0";
    return(index);
}

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明怎么样将十六进制数组按字节显示在编辑框中
喜欢 (0)
[1034331897@qq.com]
分享 (0)