【发布时间】:2023-03-08 20:15:01
【问题描述】:
我下载的一些 c# 代码包括基于十六进制的计算。
eg. int length = ((((byte) hexstr[0x10]) & 0x80) > 0) ? 0x10 : 8;
当我将此代码更改为正常的基于十进制的代码时
int length = ((((byte) hexstr[16]) & 128) > 0) ? 16 : 8;
它给出了相同的解决方案而没有给出任何错误。
它仍然可以正常运行。
所以我想知道的是为什么大多数代码都使用十六进制基数,这比普通十进制数字更难理解。
如果有人知道,请告诉我。
【问题讨论】:
-
只有代码的作者才能回答这个问题。似乎由于逻辑与十六进制相关,因此使用十六进制表示法是有意义的......