在高级程序设计语言中,使用参数是函数(过程、子程序)之间传递信息的一种手段。传值调用是指把实际参数的 (51) 传递给相应的形式参数,函数通过这种传值形参 (52) ;引用调用是指把实际参数的 (53) 传递给相应的形式参数,在函数中对形参的引用和赋值被处理成是对实际参数间接的访问。C语言中采用 (54) 调用方式进行参数传递。
在下面的主程序中,实参a与形参x以引用调用(Call by reference)的方式传递信息,实参b与形参y以传值调用(Call by value)的方式传递信息,那么,从过程"compute"返回主程序后,a和b的值分别为 (55) 。
主程序 过程compute
a:=2; X:=2*xq-y;
b:=a*ar X:=xq+2*y;
compute(a,b); return;
在高级程序设计语言中,使用参数是子程序之间传递信息的一种手段。子程序说明中的参数称为形式参数,调用语句中的参数称为实在参数。调用时,实在参数的个数、类型和顺序要和形式参数保持一致。
知道一种语言(或编译器)使用哪种参数传递方法是很重要的,因为程序的运行依赖于所用的方法。参数传递方法有传值调用(CALL BY VALUE)、引用调用(CALL BY REFERENCE)、传名调用(CALL BY NAME)和宏扩展(MACROEXPANSION)。
传值调用是指把实在参数的 (50) 传递给相应的形式参数、子程序通过这种传值形参 (51) ;引用调用是指把实在参数的 (52) 传递给相应的形式参数,此时子程序形式参数的一次引用或赋值被处理成对形式参数的 (53) 访问。
C语言中的函数,以 (54) 方式进行参数传递。
用高级语言编写程序时,子程序调用语句中的实际参数必须与子程序说明中的形式参数在 (1) 上保持一致。在允许子程序递归调用的高级语言环境中,需用动态存储管理方法,它通常使用一个 (2) 存入子程序的调用记录,调用记录可包括:
·全局量存储区域的 (3) ;
·调用点所在子程序的 (4) ;
·调用点的 (5) ;
·形式参数和实际参数的通信区域;
·返回值;
·本子程序的局部量和临时变量存储区域等。
我来回答: