设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5026|回复: 1

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

[复制链接]
发表于 2009-3-29 18:08:37 | 显示全部楼层 |阅读模式
在Witness如何将字符串转化为数组并赋值,请赐教。
* M5 j3 s+ [; M; H+ L* U具体问题如下:0 {% U% ?9 s. m2 A
模型中有一个数组cycleTime(20),已经进行了赋值,例如cycletime(1)=10,cycletime(2)=15,...,cycletime(20)=8
) z8 z4 u$ r; W% L9 n: F6 o8 B+ O5 C: a, V9 I) g  ~: \
现在需要根据这个值对20个Module里面的元素ctime赋值,假设module的名称分别为:module1,module2,module3,...,module20,每个module中都有个变量ctime,
$ \3 m" u# m+ S: g
; V0 y" c: Z, D1 ~! g  c9 o现在要实现:1 u3 N# Q8 X. P) k. ^
module1.ctime=cycletime(1)
4 v- o, Z# x- H( O, y# _module2.ctime=cycletime(2)% ]8 \; b' x3 G% ~/ Z; |4 J" a- E
...9 k$ W7 {4 f* s
module20.ctime=cycletime(20)
  l- g, L, u7 c' X1 D% `
2 i! G0 l$ H' f, [4 q我希望用程序实现,但是试了很久都没有成功。
/ _+ l# c0 d) H" x$ L8 |/ D% O3 V2 p' f& P
具体程序为:4 N  e! z8 c. q8 l5 Y" p1 w  y& K
for num=1 to 20
3 i- t$ p7 l6 `; z      module+num+.ctime=cycletime(num)5 q% e5 ^" ?, d7 |
endfor/ S/ B; j2 g4 S, u
3 O/ P$ `! s& x; B& E) c
问题是左边蓝色字体怎么处理,才能够实现我要的赋值功能??????
 楼主| 发表于 2009-3-30 19:46:45 | 显示全部楼层
自己解决了。
$ w0 m- G) p8 ?: g) p' p主要是使用两个函数:7 C9 T6 g% I1 g+ Q" P/ F7 H- e' {0 D
rvarset()和evalreal()6 n( Y5 A1 F( O; u, |
2 a3 u6 E0 A- W
具体语句:8 a  N3 l$ \4 C8 N' c6 V' A; y
rvarset(evalreal("module"+num2str(num)+".ctime"))=cycletime(num)! Z$ _4 c% O+ G: }8 M. g5 Q# g7 X3 k
, {  |; v$ Y' D# ]) w0 s6 _
即可。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-13 21:01 , Processed in 0.016830 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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