设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5106|回复: 1

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

[复制链接]
发表于 2009-3-29 18:08:37 | 显示全部楼层 |阅读模式
在Witness如何将字符串转化为数组并赋值,请赐教。& t2 H/ U: P+ b; `3 @5 e1 {, S1 E
具体问题如下:: {4 i: Y* J) T
模型中有一个数组cycleTime(20),已经进行了赋值,例如cycletime(1)=10,cycletime(2)=15,...,cycletime(20)=89 B! h; _; |: Q- v7 O9 J
1 j$ m6 Z) m, Y% {
现在需要根据这个值对20个Module里面的元素ctime赋值,假设module的名称分别为:module1,module2,module3,...,module20,每个module中都有个变量ctime,
0 R% T" K1 k3 O2 d2 W7 ]; N: p3 A8 Q0 e
现在要实现:: s6 L' |8 I# A0 _
module1.ctime=cycletime(1)/ h1 W6 j, H* _
module2.ctime=cycletime(2)
3 E% Y% {) Y( j8 M6 M$ C2 g...
) v5 c* H: s: Qmodule20.ctime=cycletime(20)  X5 d, Y9 D  E: _
9 O1 b; @9 _  E+ \, a% Z
我希望用程序实现,但是试了很久都没有成功。
* U; B; U0 e( L1 V( S5 l+ V) J; |8 |# l- O7 C' c$ U2 W7 B
具体程序为:) q/ l/ [. P; C* p
for num=1 to 20; \( r9 \5 p$ Q) u. c0 x
      module+num+.ctime=cycletime(num)
4 Q- h) ^$ T/ [8 hendfor
8 h! ]4 D+ s. T8 h1 ^5 x) n; Q
% P1 b6 c" C3 j2 g" p1 K问题是左边蓝色字体怎么处理,才能够实现我要的赋值功能??????
 楼主| 发表于 2009-3-30 19:46:45 | 显示全部楼层
自己解决了。( i. K# l4 A( H  t
主要是使用两个函数:( @6 Y3 ]/ p6 |8 ]5 C
rvarset()和evalreal()
4 d& r) G" L2 }4 h+ B+ E$ ~3 R- ^* n+ o& j: V
具体语句:
0 z2 y6 x: f, zrvarset(evalreal("module"+num2str(num)+".ctime"))=cycletime(num)" {. H2 \2 f* h  X

+ k3 C6 }7 D6 `# c& d! u即可。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-8-18 05:08 , Processed in 0.013345 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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