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

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

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

<说明符类型>  ->  <空类> | <字符型> |  <浮点型>

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

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

<直接说明符>  -> <标识符>  |  <直接说明符  '['  ']'>   |  <直接标识符'[' 恒表达式 ']'>  |  <标识符'(' 参数名单 ')'>  |  <标识符'('  ')'>  |  <直接说明符 ';' 识别名单>

<识别名单> -> <标识符> |  <识别名单 ';' 标识符>

<恒表达式> -> <恒表达式>

<参数名单> -> <参数声明> | <参数名单 ';' 参数声明>

<参数声明> -> <> | <>

1028 C语言文法的更多相关文章

  1. C语言文法

    C语言文法 源程序 → 外部声明 | 子程序(外部声明) 外部声明   → 函数定义| 函数声明 函数定义 → 类型标识符(复合句) 标识符类型 → 无类型 | 字符型 | 整型 | 浮点型 整型→ ...

  2. 1014 C语言文法定义与C程序的推导过程 程序:冒泡算法C程序(语法树)

    阅读并理解提供给大家的C语言文法文件. 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 给出一段C程序,画出用上述文法产生这段C程序的完整语法树. 程序:冒泡算法C程序 点此文字查看原图 ...

  3. 1029 C语言文法定义与C程序的推导过程

    1 阅读并理解提供给大家的C语言文法文件. 2 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 3 给出一段C程序,写出用上述文法产生这段C程序的推导过程. program → exte ...

  4. 我的mini_c语言文法设计

    //这个文件主要是用来描述当前源语言的词法结构和语法结构 //当前语言是c语言的一个子集,因此里面所有的描述大家都很熟悉 //注意,当前语言并不支持预处理,因为c预处理比较复杂,而且楼主能力低下,因此 ...

  5. 消除左递归c语言文法

    <程序> -〉 <外部声明> | <函数定义><外部声明> -〉<头文件> | <变量> | <结构体> <头 ...

  6. 简单的C语言文法

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

  7. 实验二 c语言文法

    <程序>-><声明>|<程序><函数> <函数>-><修饰符><标识符><形式参数>< ...

  8. c语言文法简化版文法

    <源程序>→<外部声明>|<外部声明><函数体> <外部申明>→<头文件><函数声明>|其他声明 <函数体&g ...

  9. 简化C语言文法

    程序 → 外部声明|程序 外部声明 外部声明 → 定义函数|定义 函数定义 → 类型标识符 声明部分语句 类型标识符 → 空类型|字符型|整型|浮点型 声明部分语句 → 指针 直接声明|直接声明 指针 ...

随机推荐

  1. linux 标准输入输出

    文件描述符是一个简单的正整数,用以标明每一个被进程所打开的文件和socket.最前面的三个文件描述符(0,1,2)分别与标准输入(stdin),标准输出(stdout)和标准错误(stderr)对应 ...

  2. JQuery之DataTables强大的表格解决方案

    1.DataTables的默认配置 $(document).ready(function() { $('#example').dataTable(); } ); 示例:http://www.guoxk ...

  3. 深入ThreadLocal之一

    想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理.首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码 ...

  4. R中根据匹配原则将一列拆分为几列的方法

    例如我们需要将一下数据的第二列从and处拆分为两列: before = data.frame(attr = c(1,30,4,6), type=c('foo_and_bar','foo_and_bar ...

  5. scala环境搭建

    第一步:Java 设置 确保你本地以及安装了 JDK 1.5 以上版本,并且设置了 JAVA_HOME 环境变量及 JDK 的bin目录. 在 Mac 上安装 Java 下载 jre-8u65-mac ...

  6. 查看linux的版本

    1. uname -a ~$ uname -a Linux lubuntu-Vostro-A840 3.19.0-73-generic #81-Ubuntu SMP Tue Oct 18 16:02: ...

  7. 移动应用(手机应用)开发IM聊天程序解决方案

    这个解决方法已经定制下来很久了,上一段时间比较忙,没有时间整这些东西.最近稍微好些,不怎么加班.所以抽空总结下,同时也分享给大家,也算是给大家一个借鉴吧!或许这并不是最好的解决方案,但只要能满足当前需 ...

  8. 20145305 《Java程序设计》第5周学习总结

    教材学习内容总结 1.设计错误对象都继承自java.lang.Throwable类 2.Throwable有两个子类:java.lang.Error与java.lang.Exception 3.Err ...

  9. IIS6.0中布署MVC站点(转)

    昨晚我写的API上线,API是vs2010 + MVC4开发的,需要布署到windows 2003 server + IIS6.0的环境中,之前一直是布在IIS7.0,比较熟悉, 换到IIS6.0,添 ...

  10. JAVA中压缩与解压缩

    以压缩Zip文件为例.主要是通过ZipOutputStream类实现.解压缩主要使用ZipFile类和ZipInputStream以及ZipEntry类. package main; import j ...