C语言文法阅读与理解

<翻译单元>--><外部声明>--><函数定义>|<申报>

<函数定义>--><声明说明符>--><声明符>--><申报>|<复合语句> 

<声明说明符>--><存储类说明符>|<类型说明符>|<类型限定符>

<存储类说明符>-->"auto | register | static| extern | typedef"

<类型说明符>-->"void| char| short| int| long| float| double| signed| unsigned"| <struct-or-union-specifier>| <enum-specifier>| <typedef-name>(结构或联合说明符,枚举符,类型定义名称)

<结构或联合说明符>--><结构或联合> <标识> <“{“{<结构声明>} +”}”> | <结构或联合>”{“{<结构声明>} +”}” | <结构或联合> <标识符>

<结构或联合>-->”结构” | “联合” 

<结构声明> --> {<说明限定符>} * <结构说明符列表>

<说明限定符> --> <类型说明符>| <类型限定符> 

<结构说明符列表> --> <结构说明符>| <结构说明符列表> “,”<结构说明符> 

<结构说明符>--><说明符>| <声明符>“:”<常量表达式>|“:”<常量表达式> 

<声明符> -->{<指针>}?(-->“*”{<类型限定符>} * {<指针>}?)<直接说明符>

原文地址:https://www.cnblogs.com/huang123/p/4918074.html