我对Unicode(双字节)ANSI(单字节) ,ASCII,GB2312,的关系弄的乱七八糟,
VC默认是什么,如果VC要显示汉字又是什么,是不是用两个字节。

解决方案 »

  1.   

    默认是ANSI吧,比如你要区分字符串里的汉字就用上Unicode了,只是显示不用管它
      

  2.   

    VC默认是ANSI(单字节),要显示汉字要用Unicode(双字节)。Unicode并不仅是汉字,包括了非ASCII的各种文字的。GB2312只是简体汉字的字符集,用Unicode进行编译的程序,对字符是以双字节来处理,并且在编译时会自动将原来处理单字节字符的函数替换为双字节的。找《Winodwos程序设计》的电子书看一看吧
      

  3.   

    About "Win32 字符编码", refer to this article please:http://www.vckbase.com/document/viewdoc/?id=1082After reading this, I think you'll get no more questions.
      

  4.   

    如果默认是ANSI的(单字节),么显示中文还是很正常?
      

  5.   

    Q: 如果默认是ANSI的(单字节),么显示中文还是很正常?
    A: 因为你的 OS 默认使用的语言为中文的,VC 并不知道那些中文是什么。