我在一段教学代码中遇到过这个宏MAKEWORD(2,2)。我在MSDN中读到它“通过连接指定的值创建一个WORD值。”问题是,WORD不是类似于无符号整数的东西吗,为什么我需要执行这样一个奇怪的过程,例如使用MAKEWORD()? 最佳答案 宏需要两个字节作为它的参数:WORDMAKEWORD(BYTEbLow,BYTEbHigh);它在Windef.h中定义为:#defineMAKEWORD(a,b)((WORD)(((BYTE)(a))|(((WORD)((BYTE)(b)))它基本上是从两个1字节的字构建一个16位的字(并且看