zoukankan      html  css  js  c++  java
  • 简单文法(以c语言为例)

    简单文法(以c语言为例)

    //程序

    <program>                       

    external_declaration   //外部声明

    | body  program                       //函数主体 程序 

    //外部声明

    <external_declaration>       

    declaration external_declaration                //头文件声明 外部声明

    | function_definition  external_declaration     //函数声明  外部声明

    | program                                     //程序

    //头文件声明

    <declaration>   

    Symbol  identifier  bracket   identifier  bracket  declaration  //符号  标识符符号头文件 符号 头文件声明

    |type_specifier   variate ‘;’  declaration        //数据类型 变量  头文件声明

      (全局变量)

    | type_specifier  variate  type_specifier  variate ,type_specifier  variate  program                     //数据类型 变量(函数名) 参数   程序 (自定义函数的声明)  

                          

     //函数

    <function_definition>      

    type_specifier  declarator           //类型 头文件声明 

    compound_statement              //混合声明

      //函数主体

    <body>  

    identifier  bracket   body                     //main

    |type_specifier  variate ‘;’        //数据类型  变量 

    |initializer        //初始化

    |statement //声明、陈述

      //初始化

    <initializer>   

    variate Initializer                      //变量   初始化

    |Symbol Initializer                   //符号   初始化

    |unction_definition                   //函数  (函数调用)

    //数据类型

    <type_specifier>     

    Void

    |char

    |int

    |float

    |double

     //标识符 头文件

    <identifier>       

    Include

    | define

    |stdio.h

    |math.h

    |stdlib.h

    |time.h

    |string.h

    |main ‘(‘ ‘)’ 

     //声明、陈述

    <statement>    

    judge_statement          //判断

    |jump_statement //跳转符

    |iteration_statement //循环

    |selection_statement   //选择

      //判断

    <Judge_statement>    

    if Body

    |Body

       //循环

    <iteration_statement> 

     while Body

    | for Body

    | do Body while 

    |Body

      //跳转符

    <jump_statement>    

    Continue body

    |break body

    |return body

    |return  body

    |body

       //符号

    <Symbol >       

    #   

    |+ bracket 

    |=  bracket  

    |- bracket 

    | bracket 

    |bracket

    |

    |空串

     //括号

    <bracket>    

    (   bracket

    |)  bracket

    |{  bracket

    |}  bracket

    |<  bracket

    |>  bracket

    |空串

      //指针

    <Pointer >   

    '*'

    | '*' variate             //变量

      //变量

    <variate > 

    a  variate

    |b  variate

    |c  variate

    |.....

    |z  variate  

    //数字

    <figure>

    0  figure

    |1 figure

    |2 figure

    ......

    |9 figure

     

     

     

     

  • 相关阅读:
    剑指offer-二维数组中的查找
    TF-IDF(term frequency–inverse document frequency)
    Java实现中文字符串的排序功能
    当前课程
    【R】资源整理
    CentOS相关
    【转】Setting up SDL Extension Libraries on MinGW
    【转】Setting up SDL Extension Libraries on Visual Studio 2010 Ultimate
    【转】Setting up SDL Extension Libraries on Code::Blocks 12.11
    【转】Setting up SDL Extension Libraries on Visual Studio 2019 Community
  • 原文地址:https://www.cnblogs.com/veol/p/6127549.html
Copyright © 2011-2022 走看看