C 将十进制转换为十六进制
我想将十进制值转换为C中的十六进制格式 我有十进制值22(0x16),我想将其转换为0x22 如何转换 请帮帮我。转换为十六进制的十进制值“22”(假设广泛使用的符号)是“0x16”,而不是“0x22”。 试试这段代码。也许会有帮助。C 将十进制转换为十六进制,c,hex,decimal,C,Hex,Decimal,我想将十进制值转换为C中的十六进制格式 我有十进制值22(0x16),我想将其转换为0x22 如何转换 请帮帮我。转换为十六进制的十进制值“22”(假设广泛使用的符号)是“0x16”,而不是“0x22”。 试试这段代码。也许会有帮助。#包括 #include <stdio.h> int conv(int n){//n>=0; int hex = 0; int base = 1; for(; n ; n /= 10, base *= 16){
#包括
#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;
}
int conv(int n){//n>=0;
int十六进制=0;
int base=1;
对于(;n;n/=10,基数*=16){
十六进制+=(n%10)*基数;
}
返回十六进制;
}
int main(){
int-dec=22;
int十六进制=conv(dec);
printf(“%#x\n”,十六进制);//0x22
返回0;
}
忽略十进制22是十六进制0x16;您使用的是什么编程语言,您使用的是什么数据类型?您能否澄清您试图表达的值?它是10进制(0x16)中的22吗?或者它是以10为基数的34(0x22)?我知道可能是s的重复,但我需要像这样的0x22,我在理解这个问题时遇到了一些困难;“22”的值是否包含在char[]
或int
中?