- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我最近开始学习 C++ 和汇编,当我在 IDA 中反汇编某些东西并查看伪代码中的函数时,我遇到了 LOBYTE。
阅读 msdn:http://msdn.microsoft.com/en-us/library/windows/desktop/ms632658(v=vs.85).aspx
我还是不明白,什么是低位字节?有人可以告诉我更多关于它的用途以及它在 C++ 中的用法示例吗?
最佳答案
LOBYTE
和 HIBYTE
以及 HIWORD
和 LOWORD
是用于提取单词或字节的宏来自更大的一组字节/字。
举个例子,假设你有两个字节 24 FF
,它们组成了一个词。您将此值存储在程序的 unsigned short ushortvar
中。现在您可以使用 HIBYTE(ushortvar)
或 LOBYTE(ushortvar)
提取两个字节中的任何一个。第一个等于 0x24
,后者等于 0xff
。您可以对 unsigned int
执行相同操作,分别使用 LOWORD
HIWORD
来提取其中一个单词。
关于C++ LOBYTE。请详细解释一下?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18033192/
这两种说法有什么区别?这里假设 nValue 是一个 4 字节的整数。我相信两者是一样的。 最佳答案 我会说它们都产生完全相同的结果。 BYTE 和 WORD 都是无符号的(假设是标准的 Window
我最近开始学习 C++ 和汇编,当我在 IDA 中反汇编某些东西并查看伪代码中的函数时,我遇到了 LOBYTE。 阅读 msdn:http://msdn.microsoft.com/en-us/lib
我在以下函数的 LOBYTE/HIBYTE/LODWORD 行上收到需要左值作为左操作数错误: typedef DWORD _DWORD; typedef BYTE _BYTE; typedef WO
我有一个反编译的函数,想编译它的源代码。问题在于 LOBYTE 语句:在这样的每一行上得到“错误:需要左值作为赋值的左操作数”: LOBYTE(v9) = ((_BYTE)v12 + (v7 ^ v1
我是一名优秀的程序员,十分优秀!