C++ 中文字符串比较问题
使用的是std:string
发现无法比较中文字符。
wstring first =str2wstr(it->first);
wstring str =str2wstr(name);
int ret=first.compare(str);//还是无法比较!
wstring str2wstr(string str)
{
size_t len = str.size();
wchar_t * b = (wchar_t *)malloc((len+1)*sizeof(wchar_t));
MBCS2Unicode(b,str.c_str());
wstring r(b);
free(b);
return r;
}
处理中文字符比较该如何操作?