首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于MAKEWORD()函数解决办法

2013-01-08 
关于MAKEWORD()函数MSDN上是这样的WORD MAKEWORD(BYTE bLow,BYTE bHigh)我定义了三个变量BYTE Low 1BY

关于MAKEWORD()函数
MSDN上是这样的
WORD MAKEWORD(
    BYTE bLow,
    BYTE bHigh
);
我定义了三个变量
BYTE Low = 1;
BYTE Hign = 0;
WORD CaseNum = 0;
分别是指定低8位和高8位,
用MAKEWORD函数的话按照我的理解应该是CaseNum = MAKEWORD(Low,High);
值不是应该是0000,0000,0000,0001么,为什么得到的结果是12337?

[解决办法]
没有问题,就是1啊
不知道你那里用的有问题

顺便这个是个宏,并非函数
#define MAKEWORD(a, b)      ((WORD)(((BYTE)((DWORD_PTR)(a) & 0xff)) 
[解决办法]
 ((WORD)((BYTE)((DWORD_PTR)(b) & 0xff))) << 8))

[解决办法]
应该是没错的,保险起见,这样写:


CaseNum = MAKEWORD((Low), (High));

热点排行