MFC中Replace()函数使用出错,要怎么改
1个回答
展开全部
估计后面有个参数不是String类,可能是TCHAR类,""前加上L试试
实参类型不对肯定报错
实参类型不对肯定报错
追问
好了,加上L是什么意思?
追答
其实是_T("")宏
_T("")是一个宏,定义于tchar.h文件中。作用是将字符串转换为Unicode编码。
在C语言中普通的字符串使用ANSI进行文字处理。也就是常见的双引号字符串。但是由于数据类型的局限性,ANSI的字符串不能保存全部语言。比如说中文。
例如:char *str = "ABC";
Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。可以保存中文等。可以使用_T("ABC")或者L"ABC"的方式表示UNICODE编码。
_T()和L也存在区别。
L是一定使用UNICODE进行编码。
_T()会根据编译条件的设置,选择不同的编码格式。
https://zhidao.baidu.com/question/314272381.html
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询