考虑一下Pascal中的以下程序片段:
Program Main;
var X : integer;
procedure A:
var Y : integer;
procedure B:
var Z : integer;
procedure C:
var Z : integer;
begin(*Procedure C*)
.
.
end(*Procedure C*)
begin(*Procedure B*)
.
.
C; (*call to C*)
A; (*call to A*)
.
.
end(*Procedure B*)
begin(*Procedure A*)
.
.
B; (*call to B*)
.
.
end(*Procedure A*)
begin (*Main*)
假定除上述指示的过程外,没有其他过程的调用。已知在该程序执行期间的某个时间点,在运行时堆栈上存在五个激活记录。通过清楚地指示以下内容来描述此时的运行时堆栈:堆栈顶部,静态链接和动态链接的内容以及每个记录中局部变量的分配。回答:
解释:
这个问题的测验
如果您在以上帖子中发现任何错误,请在下面发表评论