我想将0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00这些16进制数赋给一个BYTE类型的变量,应该怎样做呢??

解决方案 »

  1.   

    难道不是直接赋值吗?
    BYTE a = 0x00;
    这样不可以吗?
      

  2.   


    byte km[100];
    memcpy(km,"\x0A\xA4\x14\x80\xE9\x87\x94\xC9");
      

  3.   


    //如果只有一个变量时:BYTE data = 0x00;//如果是多个变量时:BYTE data[10];
    data[0] = 0x00;
    data[1] = 0x00;
    ...
    data[9] = 0x00;
      

  4.   

    那如果是要把11223344556677889900AABBCCDDEEFF转成BYTE数组呢??每两个字符存一个~~
    如:
    BYTE *sKey[16];
    sKey[0]=11
      

  5.   

    1.这里最好不要定义个静态数组来存放转换数据//除非你能确保它不越界..!
    2.就是拆分字符串问题..---------CString SrcStr = "11223344556677889900AABBCCDDEEFF";
    CStringArray DesStr;DesStr.RemoveAll();for (int index = 0; index < SrcStr.GetLength(); index += 2)
    {
      if ((index += 2) > SrcStr.GetLength())
          DesStr.Add(SrcStr.Mid(index, SrcStr.GetLength() % 2));
      else
          DesStr.Add(SrcStr.Mid(index, 2));
    }再对DesStr做相关操作就比较简单了...