unicode
C++的boost
<button>123</button>
展开
-
如何玩转Emoji
Emoji,几乎是我们生活中无处不在的东西。从1F600到1F64F,还有1F680到1F6FF,1F900到1F9FF,1FA70到1FAFF都是emoji的区域。非Emoji的字符可以转变成Emoji如字符❄,加上变体选择器VS16(U+FE0F,‘️’)后就变成了❄️。还有️1️⃣,其实就是’1’+’\uFE0F’+’\u20E3’,其中20E3是一个可以在前一个字符上显示框的一个字符。而可以这么干的有12个字符:0123456789#*。javascript不支持显示BMP外的字码区域。但原创 2021-11-15 20:30:54 · 1364 阅读 · 0 评论 -
Unicode代理对食用指南
代理对,是由一个高位代理字符与一个低位代理字符组成的。所以,D800~DFFF之间的任何一个字符都不能单独出现。代理对是干什么的?如果你有一个Unicode字符????(U+1F600),而在你的控制台里只能打印16位的Unicode(即0~FFFF)你就可以使用代理对将其转化为两个16位字符了。高位代理与低位代理各有0x400个字符。合起来可以表示0x100000个字符,也就是说1号平面至16号平面的字符都可以用代理对表示了。如何计算代理对?def nonBMPtoBMP(up):原创 2021-11-13 19:52:43 · 653 阅读 · 0 评论 -
Unicode私人使用区域使用指南
每次用unicode时,都会见到一个叫自用区的东西。既然是自己用,为何不试试呢?//我们的自用区是从E000开始的#include<iostream>using std::cout;int main(){ u'\ue000' = 'A'; cout<<"\ue000\n";} 编译一下,得到 F:\>g++ 自用.cpp -std=c++11...原创 2021-11-13 19:35:21 · 3157 阅读 · 0 评论