天天看點

c語言文法分析

程式-> <外部聲明><程式><外部聲明>

外部聲明-> <函數定義>|<聲明>

函數定義-> <函數類型><說明符><複合語句>

函數類型-> void|char|int|float

說明符-> <指針 ><直接說明符>|<直接說明符>

指針-> <*>|<*><指針>

直接說明符-> <辨別符>|<直接說明符[]>|<直接說明符[常量表達式]>|<辨別符(參數序列)>|<辨別符()>|<直接說明符,辨別符序列>

辨別符序列-> <辨別符>|<辨別符序列><,><辨別符>

常量表達式-> <條件表達式>

參數序列-> <參數聲明>|<參數聲明><,><參數聲明>

參數聲明-> <聲明說明符><聲明符>

複合語句-> <{}>|<{<陳述序列>}>|<{<聲明序列><陳述序列>}>

聲明序列-> <聲明符>|<聲明序列><聲明符>

聲明符-> <初始化說明符>|<初始化說明符><,><初始化說明符>

初始化說明符-> <說明符>|<說明符><=><初始化程式>

初始化程式-> <指派表達式>|<{<初始化序列>}>|<{<初始化序列><,>}>

初始化序列-> <初始化程式>|<初始化序列><,><初始化>

陳述序列-> <陳述語句>|<陳述序列><陳述語句>

陳述語句-> <複合語句>|<表達式語句>|<選擇語句>|<循環語句>|<轉移語句>

表達式語句->  <;>|<表達式語句><;>

選擇語句-> <IF(表達式)><語句>|<IF(表達式)><ELSE><語句>

循環語句-> <WHILE(表達式)><語句>|<FOR(表達式;表達式;表達式)><語句>

轉移語句-> <continue><;>|<break><;>|<return><;>|<return><表達式><;>

表達式-> <指派表達式>|<表達式><,><指派表達式>

指派表達式-> <條件表達式>|<一進制表達式><指派運算符><指派表達式>

條件表達式-> <邏輯或表達式>|<邏輯或表達式><?><表達式><:><條件表達式>

邏輯或表達式-> <邏輯和表達式>|<邏輯或表達式><邏輯和表達式>

邏輯和表達式-> <或表達式>|<和表達式><AND><或表達式>

包涵或表達式-> <異或表達式><包涵或表達式>|<異或表達式>

異或表達式-> <和表達式>|<異或表示><和表達式>

和表達式-> <等值式>|<和等值式><等值式>

等值式-> <關系表達式>

關系表達式-> <轉移表達式>|<關系表達><'<'><轉移表示式> |<關系表達><'>'><轉移表示式>

上一篇: 分析
下一篇: 0909編譯