本帖最后由 happytc 于 2013-2-28 17:49 编辑
估计你喜欢象这种的
#include <Array.au3>
Local $aArray[8] = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']
Local $aRes = _ExtractSubArray($aArray, 1, 4)
_ArrayDisplay($aRes)
Func _ExtractSubArray(ByRef $aArray, $iStart, $iEnd, $iFlag = 0)
Local $iCount = 0
If Not IsArray($aArray) Then Return SetError(1, 1, 0)
If Not (IsInt($iStart) And IsInt($iEnd) And $iStart >= 0 And $iEnd >=0) Then Return SetError(2, 2, 0)
If $iStart > $iEnd Then Return SetError(3, 3, 0)
If $iFlag Then
Local $aSub[$iEnd - $iStart + 2]
$aSub[0] = UBound($aSub) - 1
For $i = $iStart To $iEnd
$iCount += 1
$aSub[$iCount] = $aArray[$i]
Next
Else
Local $aSub[$iEnd - $iStart + 1]
For $i = $iStart To $iEnd
$aSub[$iCount] = $aArray[$i]
$iCount += 1
Next
EndIf
Return $aSub
EndFunc
|