1

如何判断一个数组是否为空,或者它包含什么?我知道这是两个不同的问题。请善待。

我以这种方式实例化数组:

local array MyFiles[1,5]
nFilesFound = ADIR( MyFiles, qazMSG + '*.*')
4

1 回答 1

3

检查数组是否为空需要两个步骤。首先,检查是否只有一个元素:

然后,您必须按照内容中有意义的任何标准检查该元素中的数据是否为空。所以,一般来说,你可能会使用类似的东西:

IF ALEN(aMyArray) = 1 and EMPTY(aMyArray)
  * Array is empty
ENDIF

但在某些情况下,第一个为空的元素可能是有效的。

在您展示的情况下,这要容易得多。函数 ADIR() 返回找到的文件数。所以你可以检查 nFilesFound 看它是否为 0。

要尝试回答您的其他问题,您可以使用 ALEN() 函数查看数组的形状:

ALEN(aMyArray)ALEN(aMyArray, 0)告诉您数组中的元素总数。

ALEN(aMyArray,1)告诉你数组中的行数。

ALEN(aMyArray,2)告诉你列数。

您可以将最后两个相乘以获得第一个。

添马舰

于 2013-10-28T20:24:59.230 回答