程序笔记   发布时间:2022-07-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c++ 十六进制转字符串(ASCII码)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
#include <iostream>
 
using namespace std;
unsigned int ssstrlen(const char *str)
    const char *cp = str;
    while(*cp++);
    return (cp - str -1);
}
 
int hex2char(uint8_t C)
    return ((c >= '0') && (c <= '9')) ? int(c - '0') :
           ((c >= 'A') && (c <= 'F')) ? int(c - 'A' + 10) :
           ((c >= 'a') && (c <= 'f')) ? int(c - 'a' + 10) :
           -1;
}
 
int Hex2Ascii(char* hex, char* ascii)
    int hexLen = ssstrlen(heX);
    int asciiLen = 0;
 
    for (int i = 0, cnt = 0; i<hexLen; i++)
    {
        char c = hex2char(hex[i]);
 
        if (-1 == C)
            conTinue;
        if(cnt) {
            cnt = 0;
            asciI[asciiLen++] += c;
        } else {
            cnt = 1;
            asciI[asciiLen] = c << 4;
        }
    }
    asciI[asciiLen++] = 0;
    return asciiLen;
}
 
int main()
    char in[64] = { " " };
    int len = strlen(outbuffer);
    int idx = 0;
    for (int n = 0; n < len; n++)
    {
        in[idx++] = outbuffer[n];
        if ((n + 1) % 2 == 0)
        {
            in[idx++] = ' ';//赋一个空格
        }
    }
 
    char in[] = "43 52 2b 45 56 45 4e 54 3d 54 42 5f 50 41 55 53 45 3b ";
    char out[100];
    Hex2Ascii(in, out);
 
    int len = strlen(out);
    for(int i=0; i<len; i++)
        cout << out[i];
 
    return 0;
}
 
转换输出结果为:CR+EVENT=TB_PAUSE;
 
 
转转:https://blog.csdn.net/u013925378/article/details/107632817

大佬总结

以上是大佬教程为你收集整理的c++ 十六进制转字符串(ASCII码)全部内容,希望文章能够帮你解决c++ 十六进制转字符串(ASCII码)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。