JCC*_*CyC 7 .net string unicode internals
我在C#.NET中制作了一些非常糟糕的字符串操作代码,并对我记得读过的一些Joel Spolsky文章感到好奇:
http://www.joelonsoftware.com/articles/fog0000000319.html
http://www.joelonsoftware.com/articles/Unicode.html
那么,.NET是如何做到的呢?每个字符两个字节?有一些Unicode字符^ H ^ H ^ H ^ H ^ H代码点需要更多.长度如何编码?
Joh*_*lan 17
在Jon Skeet出现之前,这是他在C#中关于字符串的优秀博客的链接.
至少在当前的实现中,字符串占用20+(n/2)*4字节(向下舍入n/2的值),其中n是字符串中的字符数.字符串类型的不寻常之处在于对象本身的大小各不相同
.NET使用UTF-16.
"字符串中的每个Unicode字符都由Unicode标量值定义,也称为Unicode代码点或Unicode字符的序数(数字)值.每个代码点使用UTF-16编码进行编码,每个代码点的数值都是编码的元素由Char对象表示."
归档时间: |
|
查看次数: |
3672 次 |
最近记录: |