如"我"的转换结果是53966

解决方案 »

  1.   

    unsigned char a[3] = "我";
        WORD w = (WORD(a[1]) << 8) + a[0];
      

  2.   

    谢谢,我记得还有一个方法,就是把“我”所在内存中的空间转换为整型“int &”或"int *"我记不清了。不知道哪位大哥能告诉我一下这个方法。
      

  3.   

    你这个得到的是"我"的编码
    unsigned char a[4] = "我";
    int *b = a;
      

  4.   

    unsigned char a[3] = "我";
    int b = (*(int*)a)
      

  5.   


    #include "stdio.h"
    #define WORD unsigned short intvoid main(int argc, char* argv[])
    {
    unsigned char a[3] = "我";
        int w = (WORD(a[1]) << 8) + (WORD)a[0];
    printf("%d",w);

    }
    这个得到的才是正值,楼上的是负的
      

  6.   

    aa3000(杀手K) 的方法越界了,所以得到的是负值