码迷,mamicode.com
首页 > 其他好文 > 详细

DWORD?WORD?BYTE?相互转换?.xml

时间:2014-10-17 20:29:22      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:blog   http   os   ar   使用   div   on   log   ef   

?DWORD?WORD?BYTE?相互转换
??
??DWORD??4个字节
??WORD?????2个字节
??BYTE???????1个字节
?

1)?DWORD--->WORD

 

????DWORD?dw=0;??
??????
??????
????WORD?hW=HIWORD(dw);??
????WORD?lW=LOWORD(lw);??

2)WORD--->DWORD

 

????DWORD?dw=0;??
??????
??????
????WORD?hW=HIWORD(dw);??
????WORD?lW=LOWORD(lw);??
??????
??????
????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??

本文使用?书画小说软件?发布,内容与软件无关,书画小说软件?更惬意的读、更舒心的写、更轻松的发布。

DWORD?WORD?BYTE?相互转换?.xml

标签:blog   http   os   ar   使用   div   on   log   ef   

原文地址:http://www.cnblogs.com/shuilan0066/p/4031876.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!