到奇狐勝券首頁 奇狐社區論壇 購買奇狐勝券 試用奇狐勝券
 
論壇首頁 你可以在這裡編輯你的資料,查看短訊,訂閱主題和論壇參數等等 免費會員註冊 會員列表 論壇幫助 論壇日曆 論壇搜索 加入我的最愛 登出論壇  
奇狐社區論壇 : Powered by vBulletin version 2.3.0 奇狐社區論壇 > 指標公式 > 問題交流 > 請教老師???什麼是指標數組下標越界
  上一主題   下一主題
作者
主題 發表新主題    回覆主題
mingyi1973
中級會員

註冊日期: Jul 2009
來  自:
文章數量: 45

請教老師???什麼是指標數組下標越界

什麼是指標數組下標越界或超出有效數據區間?這該怎麼解決?

向版主報告此篇 | 查IP位址
Old Post 2009-12-02 00:50
mingyi1973 現在離線 點選這裡查看 mingyi1973 的個人資料 點選這裡給 mingyi1973 傳送一條短訊 查找更多關於 mingyi1973 的文章 增加 mingyi1973 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18091

回覆: 請教老師???什麼是指標數組下標越界

引用:
最初由 mingyi1973 發表
什麼是指標數組下標越界或超出有效數據區間?這該怎麼解決?


假設總共有 1000根K棒, 以 M15:MA(c,15); 來說
M15 這個數組(數列)有效範圍為 15 到 1000

若您以 M15[n] 來存取
當 n<15 或 n>1000 時, 就會發生 "數組下標越界或超出有效數據區間"

您可用 lbound 來取得數組的有效下界, 例如:
lbound(M15)

若 lbound 得到的值為零, 代表該數列為無效數列
若 M15 為無效數列, 就不能以 M15[n] 這種型式做任何存取

向版主報告此篇 | 查IP位址
Old Post 2009-12-02 09:19
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
mingyi1973
中級會員

註冊日期: Jul 2009
來  自:
文章數量: 45

假設總共有 1000根K棒, 以 M15:MA(c,15); 來說
M15 這個數組(數列)有效範圍為 15 到 1000

若您以 M15[n] 來存取
當 n<15 或 n>1000 時, 就會發生 "數組下標越界或超出有效數據區間"

您可用 lbound 來取得數組的有效下界, 例如:
lbound(M15)

若 lbound 得到的值為零, 代表該數列為無效數列
若 M15 為無效數列, 就不能以 M15[n] 這種型式做任何存取

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
感謝版主的回答!
我雖然(大致上)聽懂了!
以M15[n] 為例,問題出在[n] 的數值
但是我用lbound(M15)來找問題時有看到數值
卻不知這個數值要去對應那裡的(有效下界)
更不知有效的下界數值應該是多少
這該怎麼辦?

再請教一個問題
(當日)開盤到收盤的平均價格的公式該怎麼寫?謝謝!!!

向版主報告此篇 | 查IP位址
Old Post 2009-12-04 00:55
mingyi1973 現在離線 點選這裡查看 mingyi1973 的個人資料 點選這裡給 mingyi1973 傳送一條短訊 查找更多關於 mingyi1973 的文章 增加 mingyi1973 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18091

引用:
最初由 mingyi1973 發表
假設總共有 1000根K棒, 以 M15:MA(c,15); 來說
M15 這個數組(數列)有效範圍為 15 到 1000

若您以 M15[n] 來存取
當 n<15 或 n>1000 時, 就會發生 "數組下標越界或超出有效數據區間"

您可用 lbound 來取得數組的有效下界, 例如:
lbound(M15)

若 lbound 得到的值為零, 代表該數列為無效數列
若 M15 為無效數列, 就不能以 M15[n] 這種型式做任何存取

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
感謝版主的回答!
我雖然(大致上)聽懂了!
以M15[n] 為例,問題出在[n] 的數值
但是我用lbound(M15)來找問題時有看到數值
卻不知這個數值要去對應那裡的(有效下界)
更不知有效的下界數值應該是多少
這該怎麼辦?



有效的下界數值 就是 lbound(M15)

迴圈應用就是
for i= lbound(M15) to datacount do begin
以 M15[i] 來存取

若是搭配 SYSPARAM(1) 則要小心
SYSPARAM(1)的值有可能會小於lbound(M15)
必須先處理過再帶入, 處理範例如下:

PP:=SYSPARAM(1);
if PP<lbound(M15) or PP>datacount then exit;
M15[PP];

向版主報告此篇 | 查IP位址
Old Post 2009-12-04 10:29
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
cgjj
總版主

註冊日期: Oct 2003
來  自:
文章數量: 18091

引用:
最初由 mingyi1973 發表
再請教一個問題
(當日)開盤到收盤的平均價格的公式該怎麼寫?謝謝!!!



ck:=barpos=1 or date<>ref(date,1);
CKSP:=barslast(ck);
MA(C,CKSP+1);

向版主報告此篇 | 查IP位址
Old Post 2009-12-04 10:31
cgjj 現在離線 點選這裡查看 cgjj 的個人資料 點選這裡給 cgjj 傳送一條短訊 查找更多關於 cgjj 的文章 增加 cgjj 至你的好友列表 編輯/刪除訊息 引用回覆
全部時間均為台灣時間, 現在時間為03:43 發表新主題    回覆主題
  上一主題   下一主題
顯示可列印版本 | 訂閱此主題

論壇跳轉:
主題評分:

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
HTML語法禁止
vB 語法核准
表情符號核准
貼圖語法[IMG]核准
 

本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。

Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.  聯絡我們