ueiayz 发表于 2009-7-10 15:22:00

请问一个关于数组的问题

以前从没用过数组,所以就不太会用数组.
1,怎么声明一个数组?
2能不能声明一个数组(里面的元数个数无限的)?

程序运行产生的临时数 能不能放到回到事先声明的数组里?
比如:For $i= 1 to 10
    $Num = RegEnumKey("HKEY_LOCAL_MACHINE\SOFTWARE", $i)
    If @error <> 0 then ExitLoop
Next我该怎么把循环所得$Num放到一个数组里?

ueiayz 发表于 2009-7-10 16:06:11

会数组的速度来帮忙哇.
发现数组用的人不太多哩

大绯狼 发表于 2009-7-10 16:22:33

我一般这么写 自己的方法 不知道有更好的没
#include <array.au3>
dim $num
for $i=1 to Random(10,50)
        ReDim $num[$i+1]
        $num=$i
        $num[$i]=int(random(1000,10000))
Next
_ArrayDisplay($num)

lynfr8 发表于 2009-7-10 16:23:03

本帖最后由 lynfr8 于 2009-7-10 16:24 编辑

数组的建立有几种方法:
1.Dim 声明再赋值
例子:
Dim$Array1=, $array =
Dim $Grid=[["Paul", "Jim", "Richard", "Louis"], ]
Dim $Test =
或者:Dim $avArray
$avArray = "刘德华"
$avArray = "张学友"
$avArray = "黎明"
$avArray = "郭富城"2._ArrayCreate也挺方便的 【创建数组UDF函数】#include <Array.au3>
Dim $avArray
$avArray = _ArrayCreate("JPM", "Holger", "Jon", "Larry", "Jeremy", "Valik", "Cyberslug", "Nutster", "Tylo", "JdeB")
_ArrayDisplay( $avArray, "建立数组的udf" )
Exit数组的数量不是无限的,而是有限制的: 最大64维 和/或 共1600万个元素

至于数组的修改,给个例子借鉴下:#include <Array.au3>
Dim $avArray
$avArray = "刘德华"
$avArray = "张学友"
$avArray = "黎明"
$avArray = "郭富城"
_ArrayDisplay( $avArray, "原来的数组" )
_ArrayDelete( $avArray,1)
_ArrayInsert( $avArray,1,"歌神")
_ArrayDisplay( $avArray, "更新后的数组" )
Exit把_ArrayDelete、_ArrayInsert
放在循环里面就行了
自己动手研究下,实践过消化掉了才是真正属于自己学到的.

lynfr8 发表于 2009-7-10 16:25:23

本帖最后由 lynfr8 于 2009-7-10 16:26 编辑

用户定义函数 说明
_ArrayAdd 添加指定的值到数组后面,返回调整后的数组。

_ArrayBinarySearch 使用二进制搜索算法来搜索一个1维数组。

_ArrayCreate 创建一个小型数组并立即赋值。

_ArrayDelete 删除给定数组的指定元素并返回调整后的数组。

_ArrayDisplay 在消息框中显示某个1维数组的所有元素。

_ArrayInsert 插入一个新字符串到某个数组的指定元素中,并返回调整后的数组。

_ArrayMax 返回保存在数组中的最大值。

_ArrayMaxIndex 返回保存在数组中的最大值的下标(索引)。

_ArrayMin 返回保存在数组中的最小值。

_ArrayMinIndex 返回保存在数组中的最小值的下标(索引)。

_ArrayPop 返回某个数组的最后一个元素,同时将该元素从数组中删除。

_ArrayReverse 给定一个数组并把该数组的元素顺序颠倒。

_ArraySort 对一个含有多个元素的数组进行排序。

_ArraySwap 使数组的两个元素交换位置。

_ArrayToClip 把数组内容发送到剪贴板。

_ArrayToString 把数组的所有元素替换成字符串,以指定分隔符分开。

_ArrayTrim 去掉数组中的所有元素指定数量的字符。
翻翻帮助文件,里面例子很详细了
学习下这个UDF操作对数组的了解就差不多了
页: [1]
查看完整版本: 请问一个关于数组的问题