如何在C ++中将变量从十六进制转换为十进制?

时间:2017-10-13 12:17:05

标签: c++ hex

我想将变量从十六进制转换为十进制。我知道'cout'的解决方案,但我不想显示变量。我怎么能这样做?

int checksum = 98 (HEX value)

2 个答案:

答案 0 :(得分:2)

如果你的意思是98是十六进制数,你用源代码写它:

int checksum=0x98; // checksum is going to be 152

答案 1 :(得分:1)

98文字不是十六进制文字,它是一个十进制文字,表示整数值98.如果你用十六进制前缀0x作为前缀,那么文字代表一个小数价值152

int checksum = 0x98; // which is 152 in base 10 number system

值是值,无论是十进制,十六进制,八进制还是二进制literals。最终它是内存中的所有字节。值保持不变,类型为int。只有通过流操作符或文字才能操纵该值的表示。摘录自十六进制文字参考:

  

hex-literal是字符序列0x或字符序列0X   后跟一个或多个十六进制数字(0,1,2,3,4,5,6,7,8,   9,a,A,b,B,c,C,d,D,e,E,f,F)