自定義語句的解析問題(200分)

  • 主题发起人 主题发起人 qlw
  • 开始时间 开始时间
看看《编译原理》不就得了,用递归下降法就可以了,500行内可以搞定!
 
學過忘了,請給個算法例子
 
太夸张了吧,给个例子谈何容易,动拙几百行,网上给的又太复杂,还是自己看书把!
 
只要個算法,不會...太麻煩吧,
例子有更好
誰給我個詳細的,分全給他
 
看这个

如果 BNF 定义如下:
IFState:: if CondState then StateBlock [else StateBlock];

那么程序是:
function IFState: Boolean;
var
T: TToken;
begin
T:= NextToken
if T = IFTOKEN then
begin
if not CondState then Error(行号、列号、'if 中缺少 表达式')
T:= NextToken;
if not (T = THENTOKEN) then Error(行号、列号、'if 缺少 then')
StateBlock;
T:= PeekNextToken;
if T = ELSETOKEN then
begin
StateBlock;
end;
T:= NEXTTOKEN;
if T <> COLONTOKEN then Error(行号、列号、'缺少;')
end;
end;

上面是伪代码,用这个可以编程序了吧。

以后的也不要问我了,编译原理复杂的呢,增么能以两句就说明白呢?

加分吧,我都给你写了这么多了。
 
多人接受答案了。
 
后退
顶部