mecca 发表于 2010-7-28 00:03:39

[请教]zmud机器怎么实现二维数组?

如题,本人只知道#array能定义一维数组,不知道二维怎么用
听说这里高手多,特来请教

bluse 发表于 2010-7-28 06:19:33

假设有一个二维数组A:

#va A "00|11|22|33|44|55|66|77|88|99|aa|bb|cc|dd|ee|ff"
#va B %word(@A,%eval(4*%1+%2+1),|)

那么 @B(m,n) 就是符合一般概念的二维数组访问符。
@B(3,3) 返回了第 16 个元素:ff
@B(1,2) 返回了第 7 个元素:66

seagate 发表于 2010-7-28 11:01:41

list 对象支持多维数据,list里面的元素可以是字符或者数字,也可以是一个复杂结构,比如list、record等等。

mecca 发表于 2010-7-28 11:38:31

1楼的办法真巧妙哈,拜谢了
2楼说的list里套list好像随机取值有点问题,回去再试试看
ttk_04 ttk_04

bluse 发表于 2010-7-28 11:57:08

要对元素进行赋值,这样:
%len(@B) 得到原 LIST 长度,
%len(@B(m,n)) 得到需替换的元素的长度;
由此通过 %right,%left 函数,进行替换,
得到结果。

zder 发表于 2012-10-19 10:51:34

回复 3# seagate


好读取吗?请问,我现在正学习这个呢。

sizak 发表于 2012-10-21 18:37:20

好贴。收藏。

dajiao 发表于 2015-6-4 14:28:23

假设有一个二维数组A:

#va A "00|11|22|33|44|55|66|77|88|99|aa|bb|cc|dd|ee|ff"
#va B %word( ...
bluse 发表于 2010-7-27 10:19 PM http://pkuxkx.com/forum/images/common/back.gif


    好办法

ffdm 发表于 2015-6-14 09:23:57

赤果果的挖坟啊
页: [1]
查看完整版本: [请教]zmud机器怎么实现二维数组?