我的程序中有
char *ch = "你";
这个时候在内存中存的字节编码是:C4 E3
而当wchar_t *ch = "你"
这个时候在内存中存的字节编码是:60 4F
为什么这两个语句的编码不一样呢?每个都是按照什么编码进行编码的?

解决方案 »

  1.   

    Unicode在内存每个字符的占两个字节,呵呵,《Windows核心编程》中有说明!!
      

  2.   

    wchar_t is stored data as Unicode
    ex:
    wchar_t *wch="abc";//this use 6 byte
    char ch="abc";  //but this use 3 byte
      

  3.   

    char是ANSI方式,8bit
    wchar_t是UNICODE方式,16bit
      

  4.   

    强烈推荐《Windows核心编程》第二章内容
    关于ANSI和UNICODE
      

  5.   

    谁有unicode的编码的对照表阿?还有ansi的。
      

  6.   

    编码表
    http://www.ccrun.com/program/view.asp?id=23