为什么下面几条命令执行结果是1232
为什么下面几条命令执行结果是1232
n=886
m=345
k="m+n"
?1+&k
为什么1+&k是数值型,k本来不是字符型的吗?
问题点数:20、回复次数:5Top
1 楼dfwxj(清风)回复于 2005-07-26 18:17:34 得分 0
&是宏代换Top
2 楼apple_8180(十豆三)回复于 2005-07-27 08:41:46 得分 20
n=886
m=345
k="m+n"
?1+&k
?1+&k 相当于1+m+n=1+886+345=1232
参考一下帮助中的有关“宏代换”的说明Top
3 楼ThornBird313()回复于 2005-07-27 09:12:19 得分 0
一直没怎么用过宏替换,也不太理解。今天试了一下,发现一个奇怪的结果:
k = ".T."
? k
? &k.
? TYPE("&k.")
k = "12.3"
? k
? &k.
? TYPE("&k.")
k = DTOC(DATE())
? k
? &k.
? TYPE("&k.")
前两个都很正常,可是第三个&k.却显示为一个小数,而且和儒略日期(VAL(SYS(11, DATE())))的值也不一样。也不知道这个究竟如何解释?Top
4 楼apple_8180(十豆三)回复于 2005-07-27 09:29:37 得分 0
第三个&k相当于:
?05/07/27
上面就是5除以7再除以27=0.026455026455026455026455026455026
当然显示0.03了Top
5 楼ThornBird313()回复于 2005-07-27 14:18:14 得分 0
这样啊。
谢谢!Top




