• C语言文法


    <程序>→<外部声明>|<程序><外部声明>

    <外部声明>→<函数定义>|<声明>

    <函数定义>→<类型说明><声明符><符合语句>

    <类型说明>→<void>|<char>|<int>|<float>

    <声明符>→<指针直接声明符>|<直接声明符>

    <指针>→<'*'>|< '*' 指针>

    <直接声明符>→<标识符>|<’[‘ ‘]’>|<[’ 常量表达式’]’>|<参数表>|<('  ')>|< 标识符列表>

    <复合语句>→<'{' '}'>|<语句列表>|<声明列表>

    <声明列表>→<声明>|<声明列表声明>

    <标识符列表>→<标识符>|<标识符列><标识符>

    <常量表达式>→<条件表达式>

    <参数表>→<参数声明>|<参数列表><参数声明>

    <声明>→<声明>|<声明列表声明>

    <初始化>→<赋值表达式>|<“{ }”“初始化列表”>|<“{ }”“初始化列表”>

    <初始化列表>→<初始化>|<初始化列表'><初始化>

    <语句列表>→<语句>|<语句列表><语句>

    <语句>→<复合语句>|<表达语句>|<选择语句>|<迭代语句>|<跳转语句>

    <选择语句>→<if>|<IF (“表达式”)ELSE语句的声明>

    <迭代语句>→< WHILE >|< FOR >|< FOR ><语句>

    <跳转语句>→< CONTINUE >|< BREAK >< RETURN >< RETURN ><语句>

    <一元运算符>→ '&'| '*'| '+'| '-'| '~'| '!'

    <赋值操作符>→<多分配>|<股利分配>|<模分配>|<添加分配>|<子分配>|<离开分配>|<正确的分配>|<和分配>

    <存储类说明符>→< TYPEDEF >|< EXTERN >|< STATIC >|< AUTO >|< REGISTER >

    <结构或联合说明符>→<结构或联合说明符><结构体声明列表>|<结构或联合><结构体声明列表>|<结构或联合><标识符>

    <结构或联合>→< STRUCT >|< UNION >

    <结构体声明列表>→<结构体声明>|<结构体声明><结构体声明列表>

    <结构体声明>→<说明符限定符列表><结构说明符>

    <说明符限定符列表>→<类型说明符><说明符限定符列表>|<类型说明符>|<说明符限定符列表>|<类型限定符>

    <结构说明符列表>→<结构说明符>|<结构说明符列表><结构说明符>

    <结构说明符>→<说明符>|<常数表达式>|<常数表达式><说明符>

    <枚举说明符>→<枚举器列表>|<枚举标识符><枚举器列表>|<枚举标识符>

    <枚举标识符>→<枚举>|<枚举标识符><枚举>

    <枚举>→<标识符>|<常数表达式><标识符>

    <类型限定符>→<常量>|<挥发性>

    <类型限定符列表>→<类型限定符>|<类型限定符列表><类型限定符>

    <参数类型列表>→<参数列表>|<参数列表>< ELLIPSIS >

    <参数列表>→<参数声明>|<参数列表><参数声明>

    <类型名称>→<说明符限定符列表>|<说明符限定符列表><摘要说明符>

    <摘要说明符>→<指针>|<直接抽象说明符>|<指针><直接抽象说明符>

    <直接抽象说明符>→<抽象说明符>|<常数表达式>|< '[' ']'>|<直接抽象说明符>< '[' ']'>|<直接抽象说明符>< '['常数表达式']'| '(' ')'| '('参数类型列表')'|<直接抽象说明符> '(' ')'|<直接抽象说明符> '('参数类型列表')'

    <标记语句>→<标识符><声明>|<常数表达式><语句>|<默认><声明>

  • 相关阅读:
    微信端video去除最顶层播放
    MVC错误页面相关说明
    sublime使用
    linux或Mac下手动回滚代码
    用Python操作git命令
    利用pyinstaller打包加密Python项目
    进程、线程和协程的结合使用
    模块导入失败问题
    递归调用解压zip包或rar包
    随机验证码&发红包
  • 原文地址:https://www.cnblogs.com/dalaotan/p/4921047.html
Copyright © 2020-2023  润新知