比如F5 0C 00 FD 但是书上的排序出来是:000CFDF5 不知道怎么出来的 求解释请详细一点 谢谢
2 回答

当年话下
TA贡献1890条经验 获得超9个赞
排序只有两种1.从大到小排序,2.从小到大排序。
显然这里是从小到大排序(无符号数),从一个二进制数(把16进制装换为二进制数)的最高位一次做减法cmp,再根据标志位c的判断两个数的大小关系,00<0C<F5<FD,应该是印刷错误
特殊情况的:1.指针地址的比较,2.数组标度的比较,这两种情况比较的是存放内容的地址大小,所以在没有看到你给的这个结果的问题之前不排除有以上两种特殊情况的可能性

慕神8447489
TA贡献1780条经验 获得超1个赞
0xF50C00FD 在little-endian下,排序是, FD 00 0C F5. 即 低位在前。
0xF50C00FD 在big-endian下, 排序是, F5 0C 00 FD, 即 高位在前
添加回答
举报
0/150
提交
取消