资讯详情

C语言把十六进制数据转换为字符串

创作人QQ:851301776,邮箱:lfr890207@163.com 欢迎大家进行技术交流,本博客主要是自己的学习经验,只为每天进步一点!

个人座右铭: 1.没有横空出生,只要厚积一定要发。 2.你可以不受过高等教育,你可以不上学,但你必须学习

1.将数组中的16进制数转换为字符串

1.概述

例如,我们收到16进制数(0)的一包数据xA1,0xB1,0xC1,0xD1)结果是:将16进制数据转换为字符串A1B2C1D1.用途:写日志或其他特殊用法。

2.掩码

void hex_to_asciistring(u8* str,u32 size,u8* str1) {  u8 deposit [2];  u16 i=0;  u8 j = 0;   for(i=0;i<size;i  ){    deposit[1] = str[i] & 0x0F;   deposit[0] = (str[i] &0xF0) >> 4;   for(j = 0; j < 2; j  ){   switch(deposit[j]){    case 0x00:      str1[i*2 j]='0';     break;    case 0x01:      str1[i*2 j]='1';     break;    case 0x02:      str1[i*2 j]='2';     break;    case 0x03:      str1[i*2 j]='3';     break;    case 0x04:     str1[i*2 j]='4';     break;    case 0x05:      str1[i*2 j]='5';     break;    case 0x06:      str1[i*2 j]='6';     break;    case 0x07:      str1[i*2 j]='7';     break;    case 0x08:      str1[i*2 j]='8';     break;    case 0x09:      str1[i*2 j]='9';     break;    case 0x0A:      str1[i*2 j]='A';     break;    case 0x0B:      str1[i*2 j]='B';     break;    case 0x0C:      str1[i*2 j]='C';     break;    case 0x0D:      str1[i*2 j]='D';     break;    case 0x0E:      str1[i*2 j]='E';     break;    case 0x0F:      str1[i*2 j]='F';     break;    default:     return ;   }   }   }    return ; } 

二、将某一十六进制整数转换为字符串

1.概述

作用:整数0xA1B2.转换为字符串A1B2”

2.掩码

int hex2str(unsigned int data, char* s, int len) {     int i;       s[len] = 0;     for (i = len - 1; i >= 0; i--, data >>= 4)     {         if ((data & 0xf) <= 9)             s[i] = (data & 0xf)   '0';         else             s[i] = (data & 0xf)   'A' - 0x0a;     }     return 1; }

标签: 低压并联电容器串接xd1电抗器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台