我需要一个非常简短的方法来提取十六进制数的最后4位数。因此0x2479c
的输入应该输出0x479c
。我想避免转换和重新转换为二进制文件。
模数除法通常适用于十进制数,在这种情况下不起作用。
0x2479c modulo 0xffff = 0x479e
这是不正确的。我试图实现这个是c / c ++。
答案 0 :(得分:5)
你应该使用一个掩码然后一个字节明智的'和'与另一个值。在你的情况下:
0x2479c & 0x0ffff
答案 1 :(得分:2)
使用面具
0x2479c & 0x0ffff
或模运算符
0x2479c % (0x10000);
你在模数的操作数中被一个人拒之门外。