WORD是無符號的短整型,且占2個位元組。
基本介紹
- 中文名:無符號的短整型別名
- 外文名:WORD
- 定義:typedef unsigned short WORD
- 程式語言:C++
基本定義
科學相關
- DWORD dw=0;
- WORD hW=HIWORD(dw);
- WORD lW=LOWORD(dw);
2)WORD--->DWORD
- DWORD dw=0;
- WORD hW=HIWORD(dw);
- WORD lW=LOWORD(dw);
- dw=MAKELONG(lW,hW);
3) WORD---->BYTE
- WORD word=0;
- BYTE hb=HIBYTE(word);
- BYTE lb=LOBYTE(word);
4)BYTE------>WORD
- WORD word=0;
- BYTE hb=HIBYTE(word);
- BYTE lb=LOBYTE(word);
- word = MAKEWORD(lb,hb);
5) "ABCD" 或L“你好” 這樣的四位元組字元串 轉換為DWORD 進行保存
- WCHAR str[3]={L"你好"};
- memcpy(&dWord,str,4);
- WCHAR hChar=(WCHAR)HIWORD(dWord); // 好
- WCHAR lChar=(WCHAR)LOWORD(dWord); // 你
綜合例子:
- char *name="abcd";
- DWORD dWord=0;
- WORD hw=HIWORD(dWord);
- WORD lw=LOWORD(dWord);
- BYTE hhb=HIBYTE(hw);
- BYTE lhb=LOBYTE(hw);
- BYTE hlb=HIBYTE(lw);
- BYTE llb=LOBYTE(lw);
- hhb = name[0];
- hlb = name[1];
- lhb = name[2];
- llb = name[3];
- hw = MAKEWORD(hlb, hhb); //ba
- lw = MAKEWORD(llb, lhb); //dc
- //dWord 為 "dcba"
- dWord = MAKELONG(lw, hw); //dcba
- hw=HIWORD(dWord); // ba
- lw=LOWORD(dWord); // dc
- hhb=HIBYTE(hw); // a
- lhb=LOBYTE(hw); // b
- lhb=HIBYTE(lw); // c
- llb=LOBYTE(lw); // d
- /////////////////////// 對比程式 ///////////////////////////////////////////////////
- // dWord 為 "abcd"
- memcpy(&dWord,name,4);
- hw=HIWORD(dWord); // cd
- lw=LOWORD(dWord); // ab
- hhb=HIBYTE(hw); // d
- lhb=LOBYTE(hw); // c
- lhb=HIBYTE(lw); // b
- llb=LOBYTE(lw); // a