将十进制转换为十六进制

时间:2014-03-18 07:29:18

标签: c hex decimal

我想在C中将十进制值转换为十六进制格式,

我有十进制值22(0x16),我想将其转换为0x22

如何转换?

请帮帮我。

3 个答案:

答案 0 :(得分:0)

十进制值“22”转换为十六进制(假设广泛使用的符号)是“0x16”,而不是“0x22”。

答案 1 :(得分:0)

http://www.c4learn.com/c-programs/program-for-decimal-to-hexadecimal.html 试试这段代码。也许它会有所帮助。

答案 2 :(得分:0)

#include <stdio.h>

int conv(int n){//n>=0;
    int hex = 0;
    int base = 1;
    for(; n ; n /= 10, base *= 16){
        hex += (n % 10) * base;
    }
    return hex;
}

int main() {
    int dec = 22;
    int hex = conv(dec);
    printf("%#x\n", hex);//0x22
    return 0;
}