'wcscpy' : cannot convert parameter 2 from 'const class CString' to 'const unsigned short *' 这个如何解决?
代码(一)
void CtestEx::Tokenize(const CString& csToken_i,
WCHAR* pwcDelimit_i,
CStringArray& csarData_o)
{
... ...
int nSize = csToken_i.GetLength() + 1;
LPWSTR pwcToken = new WCHAR[nSize];
wcscpy(pwcToken, csToken_i);
... ...
}代码(二)
#define SEPERATOR_STRING _T( "$" )
CString csValues_i
CStringArray csarValues;... ...Tokenize(csValues_i,SEPERATOR_STRING,csarValues );'Tokenize' : cannot convert parameter 2 from 'char [2]' to 'unsigned short *'
'wcscpy' : cannot convert parameter 2 from 'const class CString' to 'const unsigned short *' 结果编译时出现报错,请教一下,应该如何修改?
void CtestEx::Tokenize(const CString& csToken_i,
WCHAR* pwcDelimit_i,
CStringArray& csarData_o)
{
... ...
int nSize = csToken_i.GetLength() + 1;
LPWSTR pwcToken = new WCHAR[nSize];
wcscpy(pwcToken, csToken_i);
... ...
}代码(二)
#define SEPERATOR_STRING _T( "$" )
CString csValues_i
CStringArray csarValues;... ...Tokenize(csValues_i,SEPERATOR_STRING,csarValues );'Tokenize' : cannot convert parameter 2 from 'char [2]' to 'unsigned short *'
'wcscpy' : cannot convert parameter 2 from 'const class CString' to 'const unsigned short *' 结果编译时出现报错,请教一下,应该如何修改?
同样CString也要改
看样子没有,SEPERATOR_STRING是'char [2]',
而okenize函数希望第二个参数是wchar_t*类型;显然不匹配;
还有别的方法吗,给个例子
cannot convert parameter 1 from 'unsigned short *' to 'char *'
在stdafx.h的最上面加入
#define _UNICODE
#define UNICODE
MultiByteToWChar函数将MultiByte的字符串转换成宽字符串(char->unsign short)