我想在C中将十进制值转换为十六进制格式,
我有十进制值22(0x16),我想将其转换为0x22
如何转换?
请帮帮我。
答案 0 :(得分:0)
十进制值“22”转换为十六进制(假设广泛使用的符号)是“0x16”,而不是“0x22”。
答案 1 :(得分:0)
答案 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;
}