关于vb中的len函数

len函数的解释是: Len 函数用来得知某字符串的长度(字符数)或某变量的大小(位数)。
我的问题是:为什么用strconv函数将unicode方式表示的字符串“vb程序设计”转成ANSI方式表示,(用len)输出的字符串长度就由6变成了5,我认为都应该是6.请高手指点迷津。

答案是2,是因为x 是Integer类型,虽然用了n = Str(n),在Str(n)返回了一个字符串" 1234"后,在赋值给n时又被自动类型转换为Integer型。

这时用Len()函数去求Integer型n的长度,即是求Integer类型的内存中所占的字节数正是2。

拓展资料

VB-PowerWrap 允许开发者在发布他们的程序时不需要再加入一大堆的 OCX 与 DLL 文件。该程序可以帮助 Visual Basic 程序员在发布他们的 可执行文件时不需要再担心关于其他链接库与 OCX 的问题了。VB-PowerWrap 允许你将程序所必需的所有 .dll 文件与 .ocx 文件打包到你的 VB 程序内部,并且不需要用户安装,直接就可以运行。并且 VB-PowerWrap 可以自动注册所必需的 .dll 与 .ocx 文件!

VB-PowerWrap 通过扫描一个 Visual Basic 的工程文件,并将该工程所需要的文件进行打包,然后创建一个包含所有必要文件的 可执行文件供程序员发布。VB-PowerWrap 使用了超强的压缩模块,这样可以创建出最小的 .exe 文件。



温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-24
ANSI方式下一个英文字符的存储要占用一个字节的空间 而一个中文字符则要占用两个字节 此情况下的LEN函数将英文字符当做半个来计算 中文字符算一个 所以就有5这个结果
第2个回答  2013-02-24
按字节计算,ANSI方式下英文字母1个就是1个字节.汉字是2个字节算一个字.
使用len计算的只是长度位数,或者叫字符串的长度,其实他不管,你可以使用strconv直接查看输出的结果是个乱码。是几位就是几位.只是计算位数。而你如果想计算精确的字节数。使用LenB()就可以计算出准确暂用的的字节个数.一般在网络数据接收的时候尽量用lenb来处理byte数据类型.否则长度会计算错误本回答被提问者和网友采纳
第3个回答  2013-02-24
你可以用MsgBox(StrConv("vb程序设计"),VbFromUnicode)来查看输出结果,我这边显示的是"扶"加四个问号,也就是5个乱码字符,所以len返回5就不奇怪了。
第4个回答  2013-02-23
a=len(text1.text,2)
msgbox a追问

什么意思呀?

相似回答