我靠,UNICODE和ASCII搞得我都糊涂了。
有以下定义
char *str1="aaa";
LPWSTR str2="bbb";
我想通过函数比较两个字符串,于是用
strcmp(str1,str2)
VC6报错:
'strcmp' : cannot convert parameter 2 from 'unsigned short *' to 'const char *'
那要什么办?

解决方案 »

  1.   

    补充LS的
    加上 USE_CONVERTION;
    才能用CW2A
      

  2.   

    CW2A   是什么东西啊   GG里都查不到,MSDN也没 
      

  3.   

    代码里面加上 USE_CONVERTION;
    strcmp(str1,(CW2A)str2);这个是ATL的字符串转换宏
      

  4.   

    USES_CONVERSION;
    strcmp(str1,(CW2A)str2); ATL字符串转换宏, 见MSDN:http://msdn.microsoft.com/en-us/library/87zae4a3(VS.71).aspx
      

  5.   

    我都加了啊。VC6还是提示 error C2065: 'CW2A' : undeclared identifier
    是不是VC6不支持?
      

  6.   

    简单的认为unicode是一种世界性的汉字,而在国内的ansi是国产的汉字。