• c文法


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

    外部声明→<功能定义>|<声明>

    功能定义→<声明复合语句的类型>

    类型→<VOID| CHAR| INT| FLOAT>

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

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

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

    >|<标识符'(' ')'|直接说明‘,’标识符表

    标识符表→标识符 |标识符列表

    常数表

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

    外部声明→<功能定义>|<声明>

    功能定义→<声明复合语句的类型>

    类型→<VOID| CHAR| INT| FLOAT>

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

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

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

    >|<标识符'(' ')'|直接说明‘,’标识符表

    标识符表→标识符 |标识符列表

    常数表达式→条件表达式

    参数表→参数声明|参数表

    参数声明→标识符的声明符说明

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

    声明→声明符|初始化声明符

    初始化声明符→声明符|声明符的初始设定式

    初始设定式→赋值表达式| '{' 初始设定式列表 '}'

    语句→选择语句|循环语句|跳转语句|表达语句|条件语句

    表达语句→;|表达式;

    选择语句→if(表达式)语句| if(表达式)语句else语句

    循环语句→while(表达式)语句|for(表达式;表达式;表达式)语句|

    跳转语句→| CONTINUE ';'| BREAK ';'| RETURN ';'| 返回表达式';'

    达式→条件表达式

    参数表→参数声明|参数表

    参数声明→标识符的声明符说明

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

    声明→声明符|初始化声明符

    初始化声明符→声明符|声明符的初始设定式

    初始设定式→赋值表达式| '{' 初始设定式列表 '}'

    语句→选择语句|循环语句|跳转语句|表达语句|条件语句

    表达语句→;|表达式;

    选择语句→if(表达式)语句| if(表达式)语句else语句

    循环语句→while(表达式)语句|for(表达式;表达式;表达式)语句|

    跳转语句→| CONTINUE ';'| BREAK ';'| RETURN ';'| 返回表达式';'

  • 相关阅读:
    剑指Offer——旋转数组的最小数字
    剑指Offer——用两个栈实现队列
    剑指Offer——从尾到头打印链表
    剑指Offer——替换空格
    剑指Offer——二维数组中的查找
    剑指Offer——数据流中的中位数
    剑指Offer——字符流中第一个不重复的字符
    剑指Offer——删除链表中重复的结点
    运维常用shell脚本
    log4cxx的使用
  • 原文地址:https://www.cnblogs.com/zhangguojing/p/4921230.html
Copyright © 2020-2023  润新知