设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3821|回复: 1

[悬赏] Witness如何将字符串转化为数组并赋值

[复制链接]
发表于 2009-3-29 18:08:37 | 显示全部楼层 |阅读模式
在Witness如何将字符串转化为数组并赋值,请赐教。5 e( x  D4 I$ J5 H/ o# w
具体问题如下:9 b% J  \- a& t
模型中有一个数组cycleTime(20),已经进行了赋值,例如cycletime(1)=10,cycletime(2)=15,...,cycletime(20)=8+ e3 ]# ~# w- r; J

1 @8 l, P0 l0 `# G" x* P现在需要根据这个值对20个Module里面的元素ctime赋值,假设module的名称分别为:module1,module2,module3,...,module20,每个module中都有个变量ctime,, D) U3 p+ E  K: x% `' A
0 ?6 Q; Q. C% F& r; Y  Q9 X
现在要实现:6 z# s2 q) F/ F# |8 v9 ]7 q
module1.ctime=cycletime(1)+ ]+ ]. f$ ^. ]4 P6 n
module2.ctime=cycletime(2)
6 b' `+ _2 ^1 y, D...
) R# v# a+ v& Lmodule20.ctime=cycletime(20)
$ r) \6 X/ N# A0 ?4 I9 a' u% \- N) v  i: q
我希望用程序实现,但是试了很久都没有成功。
4 p+ [2 V0 \* X  j( Y) b- o' o& ~8 a/ U8 H# C
具体程序为:5 ~2 V  [6 L8 {8 L; e
for num=1 to 20: ]& ^$ k3 r0 J6 L# y
      module+num+.ctime=cycletime(num). u  K& ]7 g) w* R4 m. B, v
endfor
1 ^* x& A8 C! l- z
' l% f& x6 r- d+ w" L问题是左边蓝色字体怎么处理,才能够实现我要的赋值功能??????
 楼主| 发表于 2009-3-30 19:46:45 | 显示全部楼层
自己解决了。9 v* P# I/ X: ~% M% ~+ m
主要是使用两个函数:. Q* b, L$ R4 D# H$ x+ V
rvarset()和evalreal()# D5 D4 I1 t: }+ `4 F. G

( u, Z5 d( P# |. n+ y具体语句:( H" W7 X$ i2 c8 d7 y! f
rvarset(evalreal("module"+num2str(num)+".ctime"))=cycletime(num)
; v2 Z7 g( P0 ~9 o( h: |/ Z( [! J1 S9 N* t
即可。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2024-5-22 11:56 , Processed in 0.010707 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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