簡單文法(以c語言為例)


<program> :

external_declaration

| program external_declaration

 

<external_declaration> :      //外部聲明

function_definition

| declaration

 

<function_definition> :       //函數

type_specifier  declarator    //說明符   

compound_statement  //混合聲明

 

<declaration>:     //聲明

Symbol //符號  identifier ‘<’ identifier ‘>’   declaration

|type_specifier   variate ‘;’  declaration

|identifier ‘{’ body ‘}’

 

 

<body> :   //函數主體

 type_specifier  variate ‘;’

|initializer  //初始化

 

 

<initializer> :    //初始化

variate Initializer

|Symbol Initializer

 

<type_specifier> :    //類型

Void

|char

|int

|float

|double

 

 

<identifier>  :    //標識符 頭文件

Include

| define

|stdio.h

|math.h

|stdlib.h

|time.h

|string.h

|main ‘(‘ ‘)’ 

 

<statement>  :     //聲明、陳述

udge_statement

|jump_statement

|iteration_statement

|selection_statement

 

 

<Judge_statement>  :   //判斷

selection_statement

: if '(' expression ')' statement

|if'(' expression ')' statement ELSE statement

 

<iteration_statement>:    //循環

 while '(' expression ')' statement

| for'(' expression_statement expression_statement ')' statement

| for '(' expression_statement expression_statement expression ')' statement

 

<jump_statement>  :    //跳轉符

Continue ’;’

|break ’; ’

|return’;’

|return ‘(’   ’)’ ’;’

 

 

<Symbol > :        //符號

#

|+

|=

|-

|:

|,

 

<bracket>  :   //括號  

(

|)

|{

|}

 

<Pointer > :   //指針

'*'

| '*' variate  //變量

 

<variate >:   //變量

a  variate

|b  variate

|c  variate

|.....

|z  variate  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM