将十六进制的键值转换为十进制
convert key value of hexadecimal to decimal
我想将键击表示转换为它的十进制形式。例如:-输入字符串为
D^ @ ^ ^ @ ^ A49的
应转换为0004000149Ie ^@ - 00^ D -04^ -01年我从下面的链接
找到了正确的值http://techurls.tripod.com/dha.htm编辑:
主要问题是映射值^@ - 00 ^D -04 ^A -01
是否有任何标准的lib函数或这是需要使用开关情况下完成的?
我相信你对所涉及的概念有一点误解:
首先,"^@^D^@^A49"不是十六进制数字序列,它是按键的可视化。^@ ==例如CTRL+@
十六进制数是按以下形式书写的数字:
0xFF00AB12,即以16为基数的数。0 == 0,1 == 1,…, 9 == 9, a == 10, b == 11,…, f == 15。(0x只是一个标准前缀,用于区分十六进制值与二进制或十进制数)。
如果您的目标是初始化字符串或整数,并完全控制位的位置,我建议将键盘输入读取为十六进制数字字符串(带或不带前缀,由您选择)
一旦你这样做了,你可以使用例如sscanf将字符串读入一个整数。
int sscanf ( const char * s, const char * format, ...);
的例子:
const char * hexstring = "FF800001";
unsigned int value;
sscanf(hexstring, "%x", &value);
相关文章:
- C++:二进制到十进制w/转换过程的外观
- 十六进制到十进制转换的未清理答案
- 如何在C++中将二进制编码十进制转换为 int
- 以正确的顺序从十进制转换为二进制
- Arduino 十六进制到十进制转换
- 使用指数将十进制转换为二进制
- 从十进制转换为 BCD
- 使用堆栈将字符串格式的十进制转换为双精度
- 混乱将十进制转换为C 中的十六进制
- 使用位操作员将十进制转换为八十位
- 将长 64 位十进制转换为二进制
- 将十进制转换为十六进制,找不到我的逻辑错误
- 试图制作一个将十进制转换为二进制和ASCII C++的表
- 将字符串中的十进制转换为二进制时出错
- 用正确的位大小在c++中将十进制转换为二进制
- 在编译时将十进制转换为十六进制
- 为什么将十进制转换为二进制的递归方法比迭代、使用和返回字符串更快
- 将十进制转换为 32 位二进制
- 以最佳方式将十进制转换为二进制
- 使用分而治之的二进制到十进制转换