以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  循环中修改变量无效  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=63911)

--  作者:matador_liu
--  发布时间:2014/4/14 20:39:13
--  循环中修改变量无效
 //=================================================================================
//逐K线计算
//=================================================================================
RUNMODE                :    0;


VARIABLE             :    vv = 0;

_cc : 0;

WHILE vv < C DO BEGIN
    vv := vv + 1;
    _cc := vv;
END

_cc2 : vv;

//请教: _cc与_cc2不一样,为什么_cc无法修改?
--  作者:jinzhe
--  发布时间:2014/4/15 8:55:19
--  

你这写的没有把赋值后输出给写出来,写得是赋值前的输出

多加一句

 

 //=================================================================================
//逐K线计算
//=================================================================================
RUNMODE                :    0;


VARIABLE             :    vv = 0;

_cc : 0;

WHILE vv < C DO BEGIN
    vv := vv + 1;
    _cc := vv;
END
_cc := vv;
_cc1:_cc;
_cc2 : vv;


--  作者:matador_liu
--  发布时间:2014/4/15 11:48:13
--  
 谢谢回复,但还是有些不明白. 我在循环外加一句_cc := vv; 即可输出,可是这已经在循环内做过了啊,为什么还要再写一遍.

//=================================================================================
//逐K线计算
//=================================================================================
RUNMODE                :    0;

VARIABLE             :    vv = 0;

_cc : 0;

WHILE vv < C DO BEGIN
    vv := vv + 1;
    _cc := vv;
END
_cc2 : vv;

_cc := vv; //加上这一句,即可输出_cc, 可是这不是已经在循环内做过了吗? 原理何在?

--  作者:every
--  发布时间:2014/4/15 13:15:23
--  

cc : 0;//是第一次赋值加输出,输出值为0

 

循环内 _cc := vv;//是只赋值,无输出.

 

:和:=,是语法规则的不同


--  作者:matador_liu
--  发布时间:2014/4/15 14:45:49
--  
 谢谢您的回答. 同样一句_cc := vv; 在循环内是只赋值,无输出. 放到循环外便成了又赋值,又输出? 小弟还是想不明白...