关于参数传递。

CLEAR
A=4
STORE 8 TO B,C
DO PROC with A,B,C
?A,B,C
A=4
STORE 8 TO B,C
DO PROC with A+B,2,C
?A,B,C
A=4
STORE 8 TO B,C
DO PROC with A,B,B
?A,B,C
PROCEDURE PROC
PARAMETERS X,Y,Z
X=X+Z
Y=Y+3
Z=Y+2
RETURN
我做出来的结果是 12 11 13
20 5 7
12 11 13
可是程序的运行结果是: 12 11 13
4 8 7
12 13 8
请指点第二和三步的运行结果为什么是这样?谢谢
---------------------------------------------------------------

2。
第1参数 = 第1参数 + 第3参数 就是变量(第1参数)等于A+B+C,等于20。不过没有改变A、B、C。
第2参数 = 第2参+3 就是等于2+3,这个将第2的参数的值变为5, 没有改变A、B、C。
第3参数 = 第2参数+2 就是等于5+3,这个将第3的参数的值变为7,改变C。
所以出来是 4 8 7

3。
同样
第1参数 = 第1参数 + 第3参数 就是变量A(第1参数)等于4+8,等于12。改变A。
第2参数 = 第2参+3 就是等于8+3,这个将第2的参数的值变为11, 改变B。
第3参数 = 第2参数+2 就是等于11+2,这个将第3的参数(B)的值变为13,改变B。
所以出来是 12 13 8

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus