找回密码
 加入
搜索
楼主: sanye000001

[系统综合] 复杂的二维数组怎么转化成一维数组

 火.. [复制链接]
发表于 2012-10-17 00:26:09 | 显示全部楼层
本帖最后由 netegg 于 2012-10-17 02:21 编辑

回复 15# sanye000001
不对呀,你这个怎么定义数组
$a[1] 不能赋值5个值的数组
 楼主| 发表于 2012-10-18 17:39:22 | 显示全部楼层
回复 16# netegg


    我说的是c语言里面啊,现在到这里就不行了
发表于 2012-10-18 17:58:44 | 显示全部楼层
回复 17# sanye000001

那没办法了,这个不是靠编辑能整出来的,除非改autoit的内核代码了
发表于 2012-10-19 13:43:17 | 显示全部楼层
数组里放入数组不是不可以,但是个人觉得,反而容易让人迷惑,甚至引发程序不可知的BUG
#include<array.au3>
Local $aA[3][5]=[[1,2,3,4,5],[2,3,4,5,6],[3,4,5,6,7]]

Local $A[UBound($aA)];定义一维数组

For $i = 0 To UBound($aA, 1)-1
        Local $temp[UBound($aA,2)]
        For $k=0 To UBound($aA,2)-1
                $temp[$k]=$aA[$i][$k]
        Next
        $A[$i]=$temp
next

$int=InputBox("提取","想要提取的一维数组","共有"&UBound($A)&"个一维数组")
If Not @error Then
        Local $temp
        $temp=$A[$int-1]
        _ArrayDisplay($temp)
EndIf

评分

参与人数 1金钱 +10 收起 理由
sanye000001 + 10

查看全部评分

 楼主| 发表于 2012-10-20 20:00:34 | 显示全部楼层
回复 19# 3mile


    多谢大哥。
发表于 2012-10-21 11:25:27 | 显示全部楼层
用你要的那个一维数组记录对应的二维数组行号就行了,需要的时候根据行号到二维数组里去读取那一行的内容
 楼主| 发表于 2012-10-29 20:12:16 | 显示全部楼层
回复 19# 3mile


    for $a=0 to 10 step 1
               for $a=0 to 10 step 1
                    for $a=0 to 10 step 1
                          for $a=0 to 10 step 1
                               ……(有N个for语句)
                     ……(有N个next语句)
                  next
                     next
                 next
           next
怎么把N个for语句(N是个变量),用简短的语句实现,谢谢。
发表于 2012-10-30 00:00:09 | 显示全部楼层
回复 22# sanye000001
新问题请开新贴,便于以后坛友查找.
貌似你这个循环有问题,变量只有一个$a.

也许你想的循环体是这样的?或者作个这样的假定吧.
For $a=0 to 10
        For $b=0 to 10
                For $c=0 to 10
                        ToolTip($c)
                Next
        Next
Next
这里可以作以下变形,但不知道执行效率是否会变低.
实际还是循环1千次,并且某个数值变化控制在10以内.
Local $n=1,$k=1
While ($n<11 and $k<101)
        ToolTip($n)
        Sleep(100)
        $n+=1
        If $n>10 Then 
                $n=1
                $k+=1
        EndIf
WEnd
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 10:48 , Processed in 0.066929 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表