如何判断一个数组是否为空,或者它包含什么?我知道这是两个不同的问题。请善待。
我以这种方式实例化数组:
local array MyFiles[1,5]
nFilesFound = ADIR( MyFiles, qazMSG + '*.*')
如何判断一个数组是否为空,或者它包含什么?我知道这是两个不同的问题。请善待。
我以这种方式实例化数组:
local array MyFiles[1,5]
nFilesFound = ADIR( MyFiles, qazMSG + '*.*')
检查数组是否为空需要两个步骤。首先,检查是否只有一个元素:
然后,您必须按照内容中有意义的任何标准检查该元素中的数据是否为空。所以,一般来说,你可能会使用类似的东西:
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)
告诉你列数。
您可以将最后两个相乘以获得第一个。
添马舰