zoukankan      html  css  js  c++  java
  • 简单的C语言文法

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    Next Permutation leetcode java
    用户上网行为管理之Panabit
    ROS之冗余线路Recursive Route
    ros的romon功能介绍以及使用条件
    nf_conntrack: table full, dropping packet. 终结篇
    nf_conntrack满之解决方法nginx报502错误
    Ros之BGP学习87-88课
    ros关于动态路由ospf优先级cost和priority的区别和联系
    ros ppp隧道up或者down的时候,可以写脚本,脚本可以调用的参数$user $local-address $remote-address $caller-id $called-id $interface
    ROS 6.X目前限速比较稳定的一个脚本小包优先
  • 原文地址:https://www.cnblogs.com/zzrf/p/6005362.html
Copyright © 2011-2022 走看看