VB中,len("我们是中国人")为什么返回值是6,而不是12,不是汉字占两个字符吗?

2020-06-20 科技 86阅读
VB的默认字符编码是Unicode,在这种格式下,中文字符和英文字符都是占用两个字节的,而len()函数是计算字符串长度的,所以len("我们是中国人")返回6,表示6个字符(一个汉字是一个字符,一个英文字母或数字也是一个字符)。而另一个函数lenb()则是计算字符串的字节数的,lenb("我们是中国人")返回12,表示12个字节。特别注意的是,lenb("123456")也是返回12,因为它也是占用12个字节的。
另外纠正一下你:“汉字占两个字符”的说法是错误的,应该是“汉字占两个字节”。另外,根据编码的不同,汉字也不一定就是两个字节的,比如utf-8编码汉字是占用3个字节的。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com