MAKEWORD详解

来源:互联网 发布:linux下gtk安装 编辑:程序博客网 时间:2024/05/18 02:29

The MAKEWORD macro creates a WORD value by concatenating the specified values.
//    MAKEWORD宏创建一个指定参数连接的WORD值

Syntax   //语法

WORD MAKEWORD(

     BYTE bLow, //低位     BYTE bHigh //高位);

Parameters     //参数

bLow
Specifies the low-order byte of the new value.      //指定一个低位的新值
bHigh
Specifies the high-order byte of the new value.    //指定一个高位的新值

Return Value    //返回值

The return value is a WORD value.    //返回一个WORD值



Macro Information     //宏信息

HeaderDeclared in Windef.h, include Windows.hMinimum operating systemsWindows 95, Windows NT 3.1//所在的头文件及系统
以上翻译BY 小盘
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

          看函数本词名为MAKEWORD(),故可解为:make一个WORD值,即返回一个unsigned short值。其真正用途何在?其二参又为何解?故而百度之。

            百度而知其意,MAKEWORD()将其二参连为一体,按二进制进行连接,一参为低为,二参为高位,两数连接而成一数。示例如下:

#include "stdafx.h"
#include "windows.h"
#include <iostream>
#include <bitset>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{                 //Code by 小盘 http://www.pankuu.cn
           WORD wVersionRequested = MAKEWORD(2,1);    //将MAKEWORD()的值返回给一个WORD值
            bitset<16> myset(wVersionRequested);
            cout << myset << endl;
            cout << wVersionRequested << endl;
            return 0;
}

           上面代码很形象的展示了MAKEWORD()函数的原理,先将两个参数转换为二进制,然后将第一个参数放在低位,第二个参数放在高位,最后转换为十进制。

         希望可以帮助和我一样的新手。

声明:因发现有人转载本博客的文章没有注明来自小盘's Blog,故转载请注明转自http://www.pankuu.cn 小盘's Blog

原创粉丝点击