虽然简单但困惑我的问题--选择了unicode编译方式下还可以声明char类型的变量吗,这时char到底是如何存储的?还是8位吗?char类型的变量是不是就不在可以和TCHAR类型的变量进行比较,赋值等操作了?如果可以,该怎么转化呢?非常感谢.非常感谢!

解决方案 »

  1.   

    还可以使用char,他的存储方式和原来是一样的(8位)。
    确切地说TCHAR不属于UNICODE,在UNICODE下它是wchar_t, 在mbcs下它是char.
    char 和TCHAR不可以直接进行比较(在UNICODE下),你应该先把其中的一个转化为另一个,再进行比较。可以使用MultiBytesToWideChar或WideCharToMultiBytes,如果想简单一点也可以使用T2A和A2T(如果你用vs.net请用CT2A,CA2T)不要因为小困难放弃unicode,它比char要好
      

  2.   

    建议你读一下《windows核心编程》
    电子版可到
    http://bingle.sitenova.net/
    下载,好像第2章讲的就是unicode
      

  3.   

    还可以用char,它和ANSI中一样,
    另外,还可以使用TCHAR
      

  4.   

    非常感谢LocalVar,我看过<核心>,只是看得还不够细致,昨天又逐字的看过了.
    非常感谢你.