求助vb的一个小问题。 谢谢帮助~ 表达式LenB("123 程序设计 ABC")的值是多少。 为什么?

如题所述

VB内部采用Unicode编码格式,即任何字符(含半角字母、数字、符号以及全角汉字、符号等)都由两个字节组成的(半角字符的高位字节为0,低位字节为其ASCII码)。因此,“123 程序设计 ABC”这个字符串包含12个字符(有两个空格),即24个字节,因此LenB("123 程序设计 ABC")的值为24
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-07-02
这个问题的答案要看使用在什么环境里;
1,使用在EXCEL表格里,结果为16。这个是EXCEL中提供的一个函数,它与Len()函数的区别在于这个函数在计算字符串个数的时候每个西文字符算一个长度,而每个中文字符算2个长度。
2,在VB或者VBA的代码窗口里,使用这个函数,并不能认为这个函数是错误的,但是其结果是
无论字符串是西文字符还是中文字符,每个字符都算作2个长度。
具体例子:
1,在EXCEL任意一个单元格里输入:
=LENB("123 程序设计 ABC")
该单元格显示16,即:每个西文字符算一个别长度,而每个中文字符算2个长度。
2,在VB或者VBA的代码窗口里,输入代码
Msgbox LENB("123 程序设计 ABC") 显示24
Msgbox LENB("123 ABC") 显示16本回答被提问者和网友采纳
相似回答