首页 > 其他 > 详细

VC里的编码问题

时间:2015-05-27 12:18:10      阅读:220      评论:0      收藏:0      [点我收藏+]
void CAlignSentenceDoc::NormalizeCH(wstring& delim)
{

    for(int i = 0; i < delim.size(); i++)
    {
        if(delim[i] == L‘。‘)
            delim[i] = L‘.‘;

        if(delim[i] == L‘,‘)
            delim[i] = L‘,‘;
    }
}

delim是wstring,因此里面的每个字符都是宽的,因此要用L宏做转化。
但是我试过代码写成如下

    wchar_t t = ‘。‘;//这里t是0xa1a3,不是。的unicode编码
    wchar_t t2 = L‘。‘;//这里t是0x3002,是unicode编码

也就是wchar_t 编译器并不会做一个强制转化,不加宏默认都是ascii。

VC里的编码问题

原文:http://blog.csdn.net/lampqiu/article/details/46044137

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!