LEN
来源: https://www.freebasic.net/wiki/wikka.php?wakka=KeyPgLen 最后更新: 2024-04-03
返回表达式或数据类型的长度。
语法
declare function Len ( byref expression as string ) as integer
declare function Len ( byref expression as zstring ) as integer
declare function Len ( byref expression as wstring ) as integer
declare operator Len ( byref expression as datatype ) as datatype
declare function Len ( datatype ) as integer用法:
result = Len( expression )
result = Len( DataType )参数
- expression — 任意类型的表达式。
- datatype — 一个数据类型。
返回值
返回表达式或数据类型(包括 UDT 的数据字段)的字节大小。
说明
Len 返回表达式的长度或数据类型的大小,以字节为单位。
- 若
expression为String、Wstring或Zstring类型,返回字符串的字符长度。 - 若表达式为用户自定义类型,则调用与该数据类型兼容的
Operator Len。 - 否则,返回表达式数据类型的字节大小。
在第二种形式(带有数据类型参数)中:
- 若
DataType为Zstring或Wstring,返回一个 ASCII 或 Unicode 字符的字节大小。 - 若
DataType为String,返回字符串描述符类型的大小。
注意: 若当前作用域中同名的用户自定义类型和变量同时可见,用户自定义类型优先。若要强制 Len 使用变量,将参数用括号括起来:Len((variable))。
注意: 与数组名称一起使用时,Len 返回数组的_数据类型_长度,而非元素总数。建议使用 Len(Typeof(array)) 以提高清晰度。
Len 一元运算符可与用户自定义类型重载。
示例
vb
Print Len("hello world") ' returns "11"
Print Len(Integer) ' returns 4
Type xyz
a As Integer
b As Integer
End Type
Print Len(xyz) ' returns 8版本
- 在 fbc 1.08.0 之前,
Len不返回 UDT 数据字段的大小。
方言差异
- 在
-lang qb方言中,Len只允许表达式。 - 在
-lang fb和-lang fblite方言中,可与内置类型和用户自定义类型一起使用。
与 QB 的差异
- 在
-lang fb和-lang fblite方言中,可与内置类型和用户自定义类型一起使用。