欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 逐K线模式下数组越界问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有3691人关注过本帖树形打印复制链接

主题:逐K线模式下数组越界问题

帅哥哟,离线,有人找我吗?
stephen
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2014/5/29 18:23:31
逐K线模式下数组越界问题  发帖心情 Post By:2014/5/29 18:56:32    Post IP:116.226.234.30[显示全部帖子]

/*** 在逐K线的模式下运行。做一个序列变量数组,按照道理在第一个数据已经被赋过值了,但是出现数据越界错误。请高手指点一下。


Variable: IPeak[]=0;
if BarPos=1 then IPeak[BarPos-1]:=5;
if BarPos>=2 then
begin
IPeak[BarPos-1]:= IPeak[BarPos-2]+1;  //出现数据越界问题。
end
ShowIPeak:IPeak;



 回到顶部
帅哥哟,离线,有人找我吗?
stephen
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2014/5/29 18:23:31
  发帖心情 Post By:2014/5/30 9:37:56    Post IP:116.226.234.30[显示全部帖子]

谢谢反馈。不过应该不是这个问题。下面这两句可以通过编译,结果也是对的。所以下标可以从0开始。

Variable: IPeak[]=0;
if BarPos=1 then IPeak[BarPos-1]:=5;

但是加上下面这句话,数组就越界了。
if BarPos=2 then IPeak[BarPos-1]:=6;

你可以试一下。

 回到顶部
帅哥哟,离线,有人找我吗?
stephen
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:4 积分:0 威望:0 精华:0 注册:2014/5/29 18:23:31
  发帖心情 Post By:2014/5/30 11:15:12    Post IP:116.226.234.30[显示全部帖子]

那个问题解决了。加上一行:IPeak:=close; 就好了。

 回到顶部