[英]C++ unicode (or wstring?) equivalent for (char)
有人可以告诉我“(char)”的Unicode等效吗?
对于ASCII,我经常使用例如
(char)(7)
现在我想对Unicode做同样的事情。
但
(wchar_t)(7)
没有解决,并且wchar不存在。
我想将此(可能的)Unicode字符传递给接受wstring的函数。
或换句话说:我如何以编程方式从Unicode字符值创建wstring(例如TAB为7)?
我想将此(可能的)Unicode字符传递给接受
wstring
的函数。
然后,你需要做wstring
,就像你将不得不作出一个string
从一个char
,如果你需要一个ASCII字符传递给接受一个函数string
。
function(std::wstring(1, 7)); // length 1, filled with value 7
内存中的数据未以Unicode存储。 Unicode为计算机上使用的每个(很多)字符提供了唯一的编号。
在内存中,字符被编码:将字节值映射到Unicode数字。
您使用什么编码?
win32中的wchar_t是16位,并且字符应以
UCS-2
UTF-16编码。
大多数* NIX上的wchar_t是32位,并且字符应使用UTF-32编码。
更新
looks,看来我老了。 我的上一个工作是在VS2005中进行的,仍然有UCS-2作为内部编码的引用,但我想即使是已经过时了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.