问答题X 纠错

参考答案:

对于函数f1,局部变量x声明的作用域是整个函数体,导致在函数体中不可能访问形式参数x。由于这是一个合法的C语言函数,因此编译器给出警告错误。
对于函数f2,由于局部变量x的作用域只是函数体的一部分,不会出现上述问题,因而编译器不报错。

查答案就用赞题库小程序 还有拍照搜题 语音搜题 快来试试吧
无需下载 立即使用

你可能喜欢

问答题

Pascal语言中,语句:forv:=initial.to.final.do.stmt与下列代码序列有相同含义:

(a)试考虑下述Pascal程序:

对于initial=MAXINT-5和final= MAXINT,问此程序将做些什么?其中MAXINT为目标机器允许的最大整数。
(b)试构造一个翻译pascal的for语句为三地址代码的语法制导定义。

参考答案:

问答题

试把下列C语言程序的可执行语句翻译为:
(a)一棵语法树;
(b)后缀式;
(c)三地址代码。

参考答案:

问答题

下面给出一个C语言程序及其在SPARC/SUN工作站上经某编译器编译后的运行结果。从运行结果看,函数func中4个局部变量i1,j1,f1,e1的地址间隔和它们类型的大小是一致的,而4个形式参数i,j,f,e的地址间隔和它们的类型的大小不一致,试分析不一致的原因。注意,输出的数据是八进制的。

参考答案:C语言编译器是不做实在参数和形式参数的个数和类型是否一致的检查的,由程序员自己保证它们的一致性。但是对于形式参数和实在参...

问答题

对以下的Pascal程序画出过程c第二次被激活时的运行栈,控制链和访问链。说明在c中如何访问变量x。

参考答案:

问答题

试问下面的程序将有怎样的输出?分别假定:
(a)传值调用(call-by-value);
(b)引用调用(call-by-reference);
(c)复制恢复(copy-restore);
(d)传名调用(call-by-name)。

参考答案:

A.2;
B.8;
C.7;
D.9。

问答题

为下面文法写一个语法制导的定义,用S的综合属性val给出下面文法中S产生的二进制数的值。例如,输入101.101时,S.val=5.625。(不得修改文法)。

参考答案:

问答题

为下面的算术表达式文法写一个语法制导的翻译方案,它将每个子表达式E的符号(即值大于零还是小于零)记录在属性E.sign中(属性值分别用POS或NEG表示)。你可以假定所有的整数都不为零,这样就不用担心零的符号。

参考答案:

问答题

假设说明是由下列文法产生的:

(a)建立一个翻译模式,把每一个标识符的类型加入到符号表中。
(b)从(a)中的翻译模式构造一个预翻译程序。

参考答案:

问答题

下面的文法产生的表达式是对整型和实型常数应用算符+形成的。当两个整数相加时,结果仍为整数,否则就是实数。

(a)给出一个语法制导定义以确定每个子表达式的类型。
(b)扩充(a)中的语法制导定义把表达式翻译成前缀形式,并且决定类型。使用一元算符inttoreal把整型值转换成相等的实型值,以使得前缀形式中的+的两个操作对象是同类型的。

参考答案:

问答题

根据自上而下的语法分析方法,构造下面文法的LL(1)分析表。

参考答案:

赞题库

赞题库-搜题找答案

(已有500万+用户使用)


  • 历年真题

  • 章节练习

  • 每日一练

  • 高频考题

  • 错题收藏

  • 在线模考

  • 提分密卷

  • 模拟试题

无需下载 立即使用

版权所有©考试资料网(ppkao.com)All Rights Reserved