Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:关于ubound函数的疑问

1楼
rocklet 发表于:2016/8/10 15:28:28
以下程序:
RUNMODE:0;
cl:CLOSE;
cc:UBOUND(CL);
可以通过,但是将cl改成中间语句,如:
RUNMODE:0;
cl:=CLOSE;
cc:UBOUND(CL);
就无法通过编译。提示未定义的变量‘cl’
这是为什么呢?
2楼
jinzhe 发表于:2016/8/10 15:33:54

UBOUND这个函数是用来获取数组上界的

因此CL:CLOSE;这句使得CL变成了一个序列变量(数组的一种),所以没问题

CL本来就不是数组,加了一个等号之后CL就不能成为序列变量了(也就不是数组了),所以是函数取值会报错的。

 

不用序列变量,用常规数组的办法是:

RUNMODE:0;
variable:c1[]=0;//先定义成常规数组,一个空数组
c1:=CLOSE;//然后赋值close,这样一个常规数组转化成了序列变量,数组扩大为close的数据量
cc:UBOUND(C1);//取值

 

[此贴子已经被作者于2016-8-10 17:08:50编辑过]
3楼
rocklet 发表于:2016/8/10 15:36:39
原来如此,谢谢
共3 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.06055 s, 3 queries.