zoukankan      html  css  js  c++  java
  • c语言文法分析

    程序-> <外部声明><程序><外部声明>

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

    函数定义-> <函数类型><说明符><复合语句>

    函数类型-> void|char|int|float

    说明符-> <指针 ><直接说明符>|<直接说明符>

    指针-> <*>|<*><指针>

    直接说明符-> <标识符>|<直接说明符[]>|<直接说明符[常量表达式]>|<标识符(参数序列)>|<标识符()>|<直接说明符,标识符序列>

    标识符序列-> <标识符>|<标识符序列><,><标识符>

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

    参数序列-> <参数声明>|<参数声明><,><参数声明>

    参数声明-> <声明说明符><声明符>

    复合语句-> <{}>|<{<陈述序列>}>|<{<声明序列><陈述序列>}>

    声明序列-> <声明符>|<声明序列><声明符>

    声明符-> <初始化说明符>|<初始化说明符><,><初始化说明符>

    初始化说明符-> <说明符>|<说明符><=><初始化程序>

    初始化程序-> <赋值表达式>|<{<初始化序列>}>|<{<初始化序列><,>}>

    初始化序列-> <初始化程序>|<初始化序列><,><初始化>

    陈述序列-> <陈述语句>|<陈述序列><陈述语句>

    陈述语句-> <复合语句>|<表达式语句>|<选择语句>|<循环语句>|<转移语句>

    表达式语句->  <;>|<表达式语句><;>

    选择语句-> <IF(表达式)><语句>|<IF(表达式)><ELSE><语句>

    循环语句-> <WHILE(表达式)><语句>|<FOR(表达式;表达式;表达式)><语句>

    转移语句-> <continue><;>|<break><;>|<return><;>|<return><表达式><;>

    表达式-> <赋值表达式>|<表达式><,><赋值表达式>

    赋值表达式-> <条件表达式>|<一元表达式><赋值运算符><赋值表达式>

    条件表达式-> <逻辑或表达式>|<逻辑或表达式><?><表达式><:><条件表达式>

    逻辑或表达式-> <逻辑和表达式>|<逻辑或表达式><逻辑和表达式>

    逻辑和表达式-> <或表达式>|<和表达式><AND><或表达式>

    包涵或表达式-> <异或表达式><包涵或表达式>|<异或表达式>

    异或表达式-> <和表达式>|<异或表示><和表达式>

    和表达式-> <等值式>|<和等值式><等值式>

    等值式-> <关系表达式>

    关系表达式-> <转移表达式>|<关系表达><'<'><转移表示式> |<关系表达><'>'><转移表示式>

  • 相关阅读:
    path.join()和path.resolve()的区别
    防抖debounce和节流throttle
    Promise原理剖析
    从页面到服务器,node实现文件下载
    从toString()方法到Object.prototype.toString.call()方法
    一个url加载的全过程
    vue2.0中配置文件路径
    vue2.0 #$emit,$on的使用
    跨平台移动应用引擎CrossApp V0.6.0 发布,增加视频控件
    天使汇&9秒闪投手游专场-寻找下一个《刀塔传奇》
  • 原文地址:https://www.cnblogs.com/zlcan/p/4918069.html
Copyright © 2011-2022 走看看