char16_t&u16string

在VS2015上,实验结果表明:

 (1)char16_t

 一个char16_t只能保存2字节,所以只能用0000~ffff范围内的字符对其进行初始化或赋值,使用比0000 ffff大的编码,直接报错

 二进制打印出char16_t的值,严格等于utf16编码,在这个范围内,也就是严格等于unicode编码

 (2)u16string

 复制一个unicode字符构造一个unicode字符串,用来初始化u16string:

 u16string ss(u"X");

 如果X在0000~ffff范围内,最终ss会包含两个char16_t,ss[0]严格等于X的unicode编码,ss[1]为终结符001C

 如果X在ffff以上的范围内,最终ss会包含两个char16_t,严格等于上面UTF-16编码转换后的4字节

 
 

 char32_t&u32string

 u32string是按照UTF32编码来保存字符的,也就是完全和unicode编码一一对应,,每个字符用32bits来保存

 (1)char32_t

 一个char32_t四个字节,可以保存所有的unicode字符。但是要注意初始化时,字符常量前要用U

 (2)u32string

 对于u32string ss(U“你”); ss有两个元素,ss[0]为"你"的unicode编码,ss[1]为0000001c
 
原文链接:https://blog.csdn.net/tang05505622334/article/details/78638839

posted on   lydstory  阅读(857)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2020-03-12 xp 序列号 sp3
2020-03-12 QStringLiteral处理中文
2020-03-12 this application failed to start because it could not find or load the Qt platform plugin "windows"
2020-03-12 qt release无法定位输入点
2020-03-12 编程技巧之:合理利用记事本
2020-03-12 qt界面发送windows线程无问题
2020-03-12 vs配置关键字

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示