dword word byte 相互转换 .xml

pre{
line-height:1;
color:#800080;
background-color:#d2c39b;
font-size:16px;}.sysFunc{color:#627cf6;font-style:italic;font-weight:bold;}
.selfFuc{color:#800080;}
.bool{color:#d2576f;}
.condition{color:#000080;font-weight:bold;}
.key{color:#000080;}
.var{color:#800000;font-style:italic;}
.Digit{color:#ff00ff;font-weight:bold;}
.includePre{color:#800080;}
.operator {color:#008000;font-weight:bold;}

 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  

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

 

上一篇:一步一步学习Bootstrap系列--表单布局


下一篇:FTS抓包看L2CAP Connection的建立(二)