Skip to content

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 返回表达式的长度或数据类型的大小,以字节为单位。

  • expressionStringWstringZstring 类型,返回字符串的字符长度。
  • 若表达式为用户自定义类型,则调用与该数据类型兼容的 Operator Len
  • 否则,返回表达式数据类型的字节大小。

在第二种形式(带有数据类型参数)中:

  • DataTypeZstringWstring,返回一个 ASCII 或 Unicode 字符的字节大小。
  • DataTypeString,返回字符串描述符类型的大小。

注意: 若当前作用域中同名的用户自定义类型和变量同时可见,用户自定义类型优先。若要强制 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 方言中,可与内置类型和用户自定义类型一起使用。

另请参阅

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系