上下文無關(guān)文法
產(chǎn)生式的定義及其表示
定義:產(chǎn)生式左部為一個非終結(jié)符,產(chǎn)生式右部為一個或者多個非終結(jié)符和終結(jié)符。
表示:終結(jié)符使用固定寬度字體表示,非終結(jié)符由斜體表示,非終結(jié)符后面跟一個冒號,在其后面跟的若干行中,每一行表示該終結(jié)符一個可能的產(chǎn)生式右部。若一行中產(chǎn)生式右部無法寫完,可以在第二行續(xù)寫,但是需要適當(dāng)縮進(jìn)。
例子1:
IfThenStatement:
?if (Expression) Statement
- 例子2({x}表示0個或者多個x):
ArgumentList:
? Argument {,Argument}
- 例子3([x]表示0個或者1個x):
法1:
BreakStatement:
?break [Identifier] ;
法2:
BreakStatement:
?break ;
?break Identifier ;
終結(jié)符與非終結(jié)符
非終結(jié)符:是一個抽象符號
終結(jié)符包括以下:標(biāo)識符,關(guān)鍵字,字面常量,分隔符,操作符