1、多次 mod 16 ?
数组:[0,...9, a, ...f],16个
1 -> 0x1
11 -> 0xb
...
2、基于 二进制操作 ?
标准库里没有相关的吗?我也想过用16自己转换
@echo_lovely:
不懂C++,丢很久了,
更别说新版的 C++11、C++14 了
@echo_lovely:
要相信自己的 编程实力 。JUST DO IT。
用格式化输出就行吧, %x
printf的%x来输出十六进制
int a;
char hex[100];
sprintf(hex,"%x",a);
hex数据就是十六进制的内容了。
哦,用QString::setNum(数字,进制);
进制好像只能2,8,10,16,64?
计算机没有10进制,16进制之分,只要是整型(int, unsigned int, long, unsigned long, etc.)都是2进制。10进制、16进制是解释给你看的。
0b0011(2进制) = 3(10进制)=0x3(16进制)。
WORD是2byte, 无符号整型,即unsigned short;
int是4byte,有符号整型。
不用任何特殊转换,只需要考虑数据是否溢出,符号是否一致。
int b = 10;
WORD a = b; // 成立