设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5813|回复: 1

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

[复制链接]
发表于 2009-3-29 18:08:37 | 显示全部楼层 |阅读模式
在Witness如何将字符串转化为数组并赋值,请赐教。3 _: Q. g7 S* @) q, L) s' w& P* I
具体问题如下:2 Z- L$ Y7 {3 K; d  L
模型中有一个数组cycleTime(20),已经进行了赋值,例如cycletime(1)=10,cycletime(2)=15,...,cycletime(20)=86 i5 l  i' s; S+ s- N6 i2 h; Z
9 e6 ^: P/ V) i0 G7 Q' R* }
现在需要根据这个值对20个Module里面的元素ctime赋值,假设module的名称分别为:module1,module2,module3,...,module20,每个module中都有个变量ctime,/ T6 O- `* A" L3 N$ k! j  R. R
9 S% \' |9 D; [# Y
现在要实现:
7 B8 ?8 s! w( ]) Q! q. Jmodule1.ctime=cycletime(1)6 g2 T6 N2 ^' f
module2.ctime=cycletime(2)) O8 D" [0 a+ c
...
: \% N  M3 A% {0 ~  o4 ^module20.ctime=cycletime(20)6 B: p5 q3 s" R' u$ I" \' e/ W9 R+ X
* p% m9 H1 c3 Q! Z$ w- o# ~
我希望用程序实现,但是试了很久都没有成功。3 e# K8 v1 T/ b& c$ v

( G! P# Z( T5 s8 |3 d具体程序为:- r' J, f# }% {, |/ N
for num=1 to 20" j: n2 K6 G4 c! i
      module+num+.ctime=cycletime(num)3 V7 Q( N# Y3 Q
endfor1 h5 `, n; k' f

6 J% C( a% o  l7 g问题是左边蓝色字体怎么处理,才能够实现我要的赋值功能??????
 楼主| 发表于 2009-3-30 19:46:45 | 显示全部楼层
自己解决了。  R2 ^( a# r2 u+ R# N# |
主要是使用两个函数:
3 Z) F& ?5 |& g4 mrvarset()和evalreal()
9 H* z* t; C3 i& F% C' s+ ~4 |+ A" e1 k" R) f; k
具体语句:( B9 C) ^9 C2 ?- f0 d
rvarset(evalreal("module"+num2str(num)+".ctime"))=cycletime(num)
, H$ G/ y& O- `; j, J3 \: @1 v+ d, `: W+ b( c6 C
即可。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 05:14 , Processed in 0.016510 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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