以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  全局变量赋值失败原因?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=183251)

--  作者:sakya8
--  发布时间:2020/11/30 0:02:31
--  全局变量赋值失败原因?
  str_ep1:=strcat(stklabel,\'ep1\') ;

  ep1 := c ; 
 extgbdataset(str_ep1,ep1);

为什么代码运行完ep1数值是7225,str_ep1数值是1000001.000?

--  作者:FireScript
--  发布时间:2020/11/30 9:11:57
--  
 本地正常,你是把字符串在图表上输出了,还是在全局变量管理器里面看到是这个值的呢?
[此贴子已经被作者于2020/11/30 9:13:26编辑过]

--  作者:sakya8
--  发布时间:2020/11/30 9:43:34
--  
在管理器看到的
--  作者:FireScript
--  发布时间:2020/11/30 9:51:25
--  
 一模一样代码,我本地是正常的。

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

你本地是不是还有其他什么情况没有说明?

--  作者:sakya8
--  发布时间:2020/11/30 10:05:48
--  
应该没有啊,我是逐行回测的,因电脑没在身边,图片见链接http://note.youdao.com/s/Im5jauto。
--  作者:FireScript
--  发布时间:2020/11/30 10:12:51
--  
 这个图,是在调试界面的嘛。你在工具-数据管理-全局变量  这里看下。

str_ep1 这个变量对应的就是一个字符串,它代表的是全局变量的名称,所以在调试界面看到的就是这样子的,它不是数值类型的。


你代码里面没有取全局变量的操作的,你没办法在调试里面直接看到全局变量的值的。你看到的只是它的名称而已。


--  作者:FireScript
--  发布时间:2020/11/30 10:16:31
--  
 你加一句:
showep1:EXTGBDATA(str_ep1);


然后看下showep1的值就行了。

--  作者:sakya8
--  发布时间:2020/11/30 23:05:02
--  
 str_ep1:=strcat(stklabel,\'ep1\') ;//A
  ep1 := c ;  // B
 extgbdataset(str_ep1,ep1);//C
金字塔在调试时有办法在任意行开始逐行调试吗,比如A B 或C行开始逐行调试?类似vba中的stop

--  作者:FireScript
--  发布时间:2020/12/1 8:46:35
--  
 在这里 双击打个断点

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

--  作者:sakya8
--  发布时间:2020/12/1 10:26:14
--  
设置断点的行只要不是控制语句就一定可以停下?