最近写代码过程中,从网上粘贴一段代码,编译时报以下错误
最终通过查询资料得以解决:
问题原因:0xa0是十六进制数,换成十进制就是160,表示汉字的开始。
解决方案:在报错的代码行检查两边的空格,用英文输入法的空格替换掉
代码:
char * wchar2char(const wchar_t* wchar )
{
char * m_char;
int len= WideCharToMultiByte( CP_ACP ,0,wchar ,wcslen( wchar ), NULL,0, NULL ,NULL );
m_char= new char[len+1];
WideCharToMultiByte( CP_ACP ,0,wchar ,wcslen( wchar ),m_char,len, NULL ,NULL );
m_char[len]= '\0';
return m_char;
}
来源:CSDN
作者:爱学习的蓝调
链接:https://blog.csdn.net/lihaidong1991/article/details/104503187