方法一:
void bytes_to_hexstr(char* dest, unsigned char* src) {
char buffer[3];
for (int i = 0; i < 16; i++) {
itoa(src[i], buffer, 16);
if (strlen(buffer) == 1) {
strcpy(dest + i * 2, "0");
strcpy(dest + i * 2 + 1, buffer);
} else
strcpy(dest + i * 2, buffer);
}
}
方法二
#include <ostringstream>
#include <iostream>
#include <iomanip>
*const char* bytes_to_hexstr(unsigned char* buffer) {
std::ostringstream oss;
oss << std::hex << std::setfill('0');
for (int i = 0; i < 16; i++) {
oss << std::setw(2) << int(*buffer++);
}
return oss.str().c_str();
}
void bytes_to_hexstr(char* dest, unsigned char* src) {
char buffer[3];
for (int i = 0; i < 16; i++) {
itoa(src[i], buffer, 16);
if (strlen(buffer) == 1) {
strcpy(dest + i * 2, "0");
strcpy(dest + i * 2 + 1, buffer);
} else
strcpy(dest + i * 2, buffer);
}
}
方法二
#include <ostringstream>
#include <iostream>
#include <iomanip>
*const char* bytes_to_hexstr(unsigned char* buffer) {
std::ostringstream oss;
oss << std::hex << std::setfill('0');
for (int i = 0; i < 16; i++) {
oss << std::setw(2) << int(*buffer++);
}
return oss.str().c_str();
}