共找到3條詞條名為word的結果 展開

word

編程語言中的數據類型

WORD是無符號的短整型,且佔2個位元組。

基本定義


微軟的定義:
說明WORD是無符號的短整型,且佔2個位元組

科學相關


WORD DWORD BYTE相互轉換:
DWORD 4個位元組
WORD 2個位元組
BYTE 1個位元組
1) DWORD--->WORD
[cpp]
1.DWORD dw=0;
2.WORD hW=HIWORD(dw);
3.WORD lW=LOWORD(dw);
DWORD dw=0; WORD hW=HIWORD(dw); WORD lW=LOWORD(dw);
2)WORD--->DWORD
[cpp]
1.DWORD dw=0;
2.WORD hW=HIWORD(dw);
3.WORD lW=LOWORD(dw);
4.dw=MAKELONG(lW,hW);
DWORD dw=0; WORD hW=HIWORD(dw); WORD lW=LOWORD(dw); dw=MAKELONG(lW,hW);
3) WORD---->BYTE
[cpp]
1.WORD word=0;
2.BYTE hb=HIBYTE(word);
3.BYTE lb=LOBYTE(word);
WORD word=0; BYTE hb=HIBYTE(word); BYTE lb=LOBYTE(word);
4)BYTE------>WORD
[cpp]
1.WORD word=0;
2.BYTE hb=HIBYTE(word);
3.BYTE lb=LOBYTE(word);
4.word = MAKEWORD(lb,hb);
WORD word=0; BYTE hb=HIBYTE(word); BYTE lb=LOBYTE(word); word = MAKEWORD(lb,hb);
5) "ABCD" 或L“你好”這樣的四位元組字元串 轉換為DWORD 進行保存
[cpp]
1.WCHAR str[3]={L"你好"};
2.memcpy(&dWord,str,4);
3.WCHAR hChar=(WCHAR)HIWORD(dWord); // 好
4.WCHAR lChar=(WCHAR)LOWORD(dWord); // 你
WCHAR str[3]={L"你好"}; memcpy(&dWord,str,4);
綜合例子:
[cpp]
1.char *name="abcd";
2.DWORD dWord=0;
3.WORD hw=HIWORD(dWord);
4.WORD lw=LOWORD(dWord);
5.BYTE hhb=HIBYTE(hw);
6.BYTE lhb=LOBYTE(hw);
7.BYTE hlb=HIBYTE(lw);
8.BYTE llb=LOBYTE(lw);
9.hhb = name[0];
10.hlb = name[1];
11.lhb = name[2];
12.llb = name[3];
13.hw = MAKEWORD(hlb, hhb); //ba
14.lw = MAKEWORD(llb, lhb); //dc
15.//dWord 為 "dcba"
16.dWord = MAKELONG(lw, hw); //dcba
17.hw=HIWORD(dWord); // ba
18.lw=LOWORD(dWord); // dc
19.hhb=HIBYTE(hw); // a
20.lhb=LOBYTE(hw); // b
21.lhb=HIBYTE(lw); // c
22.llb=LOBYTE(lw); // d
23./////////////////////// 對比程序 ///////////////////////////////////////////////////
24.// dWord 為 "abcd"
25.memcpy(&dWord,name,4);
26.hw=HIWORD(dWord); // cd
27.lw=LOWORD(dWord); // ab
28.hhb=HIBYTE(hw); // d
29.lhb=LOBYTE(hw); // c
30.lhb=HIBYTE(lw); // b
31.llb=LOBYTE(lw); // a