编码知识
AndersZheng
这个作者很懒,什么都没留下…
展开
-
编码基础
首先澄清一个概念 ASCII,ANSI标准和Unicode是一种编码,何为编码,编码的意思是为一个字符规定一个对象的数值,例如A的ASCII编码数值和Unicode数值肯定不同。至于编码对应的数值怎么存储,就不是编码所规定的范畴了。ASCII编码为0X00-0x7F Unicode从0x0000-0xFFFF,注意unicode的物理存储不一定对应一个字节哦,例如utf-8。 ANSI 美国国家原创 2012-03-28 21:29:47 · 517 阅读 · 0 评论 -
C++对ANSI UNICODE的支持
总体来讲,字符编码的物理存储分为两种。 第一种为Unicode-16两个字节存储一个字符,在C++表现为一个w_chart。对应的STL中的字符串对象为wstring对应的输出流为wout 第二种为ANSI编码字符和UTF-8等等一个字符为不确定的字节存储,一般使用char类型字符串存储。.原创 2012-03-29 22:45:57 · 327 阅读 · 0 评论 -
OLECHAR* BSTR wstring之间的转化
OLECHAR在window定义为如果定义_WIN32 typedef WCHAR OLECHAR。BSTR为OLECHAR*的内容首地址,4BYTE(字符串长度)+BSTR指向内容。 以下转化基于WIN32的,此时OLECHAR为WCHAR。 wstring转化为BSTR wstring wstrSrc=L"正餐"; BSTR bstrDst = SysAllocString(wstrS原创 2012-03-29 23:29:47 · 1280 阅读 · 0 评论