标签:
<源程序>→<外部声明> | <源程序> <外部声明>
<外部声明>→<定义函数> |<声明>
<定义函数>→<类型说明符> <声明符> <复合语句>
<类型说明符>→<无返回型> | <字符型> | <整型> | <浮点型>
<声明符> <指针> <直接声明符> | <直接声明符>
<指针>→<‘*‘> | <‘*‘ 指针>
<直接声明符> <标识符> | <直接声明>[]| <直接声明><[常量表达式]> | <标识符>(参数表) | <标识符>() | <直接声明>,< 标识符列表>
<标识符列表>:<标识符> | <标识符列表>,<标识符>
<常量表达式>→<条件表达式>
<参数列表>→<参数声明> | <参数列表>,<参数声明>
<参数声明>→<说明符声明>< 标识符>
<复合语句>→{} | {语句列表} | {声明语句列表}
<声明列表>→<声明> | <声明列表>< 声明>
<声明>→<初始化声明> |<初始化声明列表>,<初始化声明>
<初始化声明>→<声明> | <声明>=<初始化程序>
<初始化程序>→<赋值表达式> | {初始化列表 } | {初始化列表 ,}
<初始化列表>→<初始化程序> |< 初始化列表>,<初始化程序>
<语句列表>→<语句> | <语句列表 >< 语句>
<语句>→<复合语句> |<表达式语句> | <条件语句> | <循环语句> | <跳转语句>
<表达式语句>→; | < 表达式> ;
<条件语句>:if(表达式){语句} | if‘( 表达式 ){语句} else{语句}
<循环语句>→ where ( 表达式){语句} | for (表达式语句 表达式语句 ){语句} | for( 表达式语句 表达式语句 表达式){语句}
<跳转语句> | continue ; | break; | return; | return 表达式 ;
<表达式>:<赋值表达式 > | <表达式> ,< 赋值表达式>
<赋值表达式>→<条件表达式> | <一元表达式><赋值运算符>< 赋值表达式>
<条件表达式>→<逻辑或表达>|<逻辑或表达>?< 表达式 >:<条件表达式>
<逻辑或表达>→<逻辑与表达> | <逻辑或表达> <或运算逻辑表达式>
<逻辑与表达>:<或表达式> | <逻辑表达式><与运算或表达式>
<或运算表达式>→<异或表达式> |<或运算表达式> ||< 异或表达式>
<异或表达式>:<与表达式> | <异或表达式>^<与表达式>
<与表达式>:<相等表达式> | <与表达式>&<相等表达式>
<相等表达式>:<关系表达式> | <相等表达式> = <关系表达式 >| <相等表达式> != <关系表达式>
<关系表达式>:,<替换表达式> | <关系表达式> < <替换表达式> | <关系表达式> > <移位表达式> | <关系表达式> <= <替换表达式 >| <关系表达式> >= <替换表达式>
<替换表达式>:<加法表达式> | <替换表达式><左><加法表达式> |<替换表达式><右><加法表达式>
<加法表达式>:<乘法表达式> |<加法表达式>+<乘法表达式> |<加法表达式>-<乘法表达式>
<乘法表达式>:<强制转换表达式> |<乘法表达式>*<强制转换表达式> |<乘法表达式>/<强制转换表达式> | <乘法表达式>%<强制转换表达式>
<强制转换表达式>:<一元表达式> | (类型名称)<强制转换表达式>
<一元表达式>:<后缀表达式> |< INC运算><一元表达式> | <DEC运算><一元表达式> |<一元运算符><强制转换表达式> | <结构体变量><一元表达式> | <结构体变量>(类型名称)
<后缀表达式>:<基本表达式> |<后缀表达式>[表达式] |<后缀表达式>() |<后缀表达式>(参数表达式列表) |<后缀表达式>.<标识符> | <后缀表达式>*<标识符> |<后缀表达式><INC运算> | <后缀表达式><DEC运算>
<基本表达式>→<标识符> | <常量> | <字符串常量> | (表达式)
<参数表达式列表>: <赋值表达式> |<参数表达式列表<赋值表达式>
<一元运算符>: & | * | + | - | ~ | !
<赋值运算符>→= | <乘法分配> | <除法分配> | <MOD分配> | <加法分配> | < SUB分配> | <左分配> | <右分配> | <与分配> | <异或分配> |< 或分配>
<存储类说明符>→<定义类型 >| <外部变量> | <静态 > | <自动> |<寄存器>
<结构体或共用体说明符>:<结构体或共用体><标识符>{结构体声明列表} |<结构体或共用体>{结构体声明列表} | <结构体或共用体><标识符>
<结构体或共用体>:<结构体> | <共用体>
<结构体声明列表>:<结构体声明> | <结构体声明列表><结构体声明>
<结构体声明>:<说明符限定符列表><结构体说明符列表>;说明符限定符列表→<类型说明符><说明符限定符列表> | <类型说明符> |<类型限定符><说明符限定符列表> |<类型限定符>
<结构体说明符列表>→<结构体声明> | <结构体说明符列表>,<结构体声明>
标签:
原文地址:http://www.cnblogs.com/gjpg/p/4919967.html