编译原理龙书第六章课后作业答案_龙书第六章参考答案
编译原理龙书第六章课后作业答案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“龙书第六章参考答案”。
6.1 假如有下面的Pascal说明
TYPE
atype=ARRAY [0..9,-10..10] OF integer;
cell=RECORD
a,b:integer
END;
pcell=↑cell;
foo=ARRAY [1..100] OF cell;
FUNCTION bar(r:integer;y:cell):pcell;
BEGIN……END;
写出atype,cell,pcell,foo和bar的类型表达式。
解答:
atype: ARRAY(0..9,ARRAY(-10..10, integer));
cell: RECORD((a× integer)×(b×integer));
pcell: POINTER(cell);
或: POINTER(RECORD((a ×integer)×(b× integer)));
foo: ARRAY(1..100, cell);
或 : ARRAY(1..100, RECORD((a ×integer)×(b× integer)));bar: integer× cell→pcell;
或 : integer× cell→POINTER(RECORD((a×integer)×(b×integer)));
6.4 假定类型定义如下:
TYPE
link=cell;
cell=RECORD
info:integer;
next: link
END;
下面哪些表达式结构等价?哪些名字等价?
(1)Link(2)pointer(cell)(3)pointer(Link)
(4)pointer(record(infointeger)(next pointer(cell)))
解答:(1)(2)(4)结构等价,无名字等价。