input: unsigned char src[6] = {0x12, 0x32,0x56,0x78,0x90,0xab}
output:char[12] = {"1232567890ab"}
代码
#include输出结果#include using namespace std; typedef unsigned char BYTE; //封装成函数 char* ByteOutputByChar(BYTE byData[], int _exdataLen) { char* temp = (char*)malloc(sizeof(BYTE)); memset(temp, 0, sizeof(BYTE)); char* str = (char*)malloc(_exdataLen * sizeof(BYTE)); memset(str, 0, _exdataLen * sizeof(BYTE)); for (int i = 0; i < _exdataLen; i++) { sprintf_s(temp, 1024, "%02x", byData[i]); strcat_s(str, 1024, temp); memset(temp, 0, sizeof(BYTE)); } return str; } int main() { BYTE exData[6] = {0x12, 0x32,0x56,0x78,0x90,0xab}; char* temp = (char*)malloc(sizeof(BYTE)); memset(temp, 0, sizeof(BYTE)); char* str = (char*)malloc(3*sizeof(BYTE)); memset(str, 0, 6*sizeof(BYTE)); for (int i = 0; i < sizeof(exData); i++) { sprintf_s(temp, 32, "%02x", exData[i]); strcat_s(str, 32,temp); memset(temp, 0, sizeof(BYTE)); } //mian函数内部处理输出 cout << str << endl; //调用自定义函数ByteOutputByChar输出 char* str1 = ByteOutputByChar(exData, 6); cout << str1 << endl; system("PAUSE "); return 0; }



