C - Char到hexa

时间:2016-04-10 21:09:22

标签: c

我有str:

char *str = "lala";

现在,我想将str中的任何字符转换为十六进制,例如:

str = convert(str);
print str: 0x6C 0x61 0x6C 0x61
            ^ l  ^ a  ^ l  ^ a

我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

只需要求printf执行此操作:

void convert(char* str, size_t length) {
    size_t i;
    for(i = 0; i < length; i++)
        printf("0x%02x ", str[i]);
}