一、debugfile只在最后一個(gè)周期才執(zhí)行,debugfile2可作用于所有周期。這個(gè)大概誰(shuí)都能明白。
二、兩者都可以往指定文件輸出特定的唯一的數(shù)字,但是
DEBUGFILE(PATH,STR,NUM),沒有參數(shù)N,寫了參數(shù)則公式通不過。始終輸出打印時(shí)間。
DEBUGFILE2(PATH,STR,NUM,N),有參數(shù)N,小心了!N<=0不打印輸出時(shí)間,N>0(不見得是整數(shù))輸出打印時(shí)間。不寫參數(shù)N則公式通不過。
三、DEBUGFILE(\'D:\\TEST.TXT\',\'當(dāng)前資產(chǎn)為%.2f\',1234)
DEBUGFILE2(\'D:\\TEST.TXT\',\'當(dāng)前資產(chǎn)為%.2f\',1234,1)
‘%.2f’這個(gè)打印控制符里面的‘f’必須小寫,否則公式能通過,但是數(shù)字輸出為空。這算是小意思了,不算為難你。
四、DEBUGFILE除了可以輸出指定數(shù)字以外,還可以輸出一連串的字符串,包括把數(shù)字轉(zhuǎn)化為字符串,沒有控制符‘%.2f’了,例:
debugfile( \'D:\\TEST.TXT\' ,\'當(dāng)前價(jià)格: \'+numtostr(close,2) +\' \'+\'開盤價(jià) \'+numtostr(open,2),-1);
但是,你發(fā)現(xiàn)這個(gè)例子里面最后有個(gè)參數(shù)‘-1’,是什么?這是為難你的地方。DEBUGFILE本身沒有輸出時(shí)間控制參數(shù)N(見第二條),
所以這最后面的數(shù)字不是參數(shù)N,不是控制是否輸出打印時(shí)間的。但是必須要有個(gè)數(shù),隨便是什么數(shù),但是不能空。
空則公式通不過。
DEBUGFILE2除了可以輸出指定數(shù)字以外,還可以輸出一連串的字符串,包括把數(shù)字轉(zhuǎn)化為字符串,沒有控制符‘%.2f’了,例:
debugfile2( \'D:\\TEST.TXT\' ,\'當(dāng)前價(jià)格: \'+numtostr(close,2) +\' \'+\'開盤價(jià) \'+numtostr(open,2),-1,10);
請(qǐng)注意最后兩個(gè)參數(shù)-1和10,因?yàn)?/span>DEBUGFILE2帶有參數(shù)N(見第二條),所以該例句中最后一個(gè)數(shù)10是參數(shù)N,10>0因此要打印輸出時(shí)間。
而前面那個(gè)-1,則代表填任意數(shù)字都行。后面兩個(gè)數(shù)都必須填,少一個(gè),則公式通不過。
五、總算是搞明白了。看下面的 debugfile2( \'D:\\TEST.TXT\' ,\'當(dāng)前價(jià)格: \'+numtostr(close,2) +\' \'+\'開盤價(jià) \'+numtostr(open,2),-1,10);
的輸出結(jié)果:
2014-06-11 14:42:30.630 當(dāng)前價(jià)格: 2154.00 開盤價(jià)2155
有什么不對(duì)嗎?有。當(dāng)前價(jià)格‘2154.00’帶有小數(shù),開盤價(jià)‘2155’沒小數(shù)(不是也應(yīng)該帶小數(shù)嗎?)哎,輸不了那么多字符串,
debugfile2對(duì)輸出字符串?dāng)?shù)量有限制,中文字符串一個(gè)頂幾個(gè),到后面輸不出來小數(shù)了。