首页 > 代码库 > 编译原理实验2----简化版的C语言文法

编译原理实验2----简化版的C语言文法

<源程序>  —><外部声明> |<程序外部声明>

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

<程序外部声明> —><头文件>|<宏定义>

<头文件> —> <#include stdio.h>|<#include stdilb.h>|<#include <string>>|<#include manth.h>......

<宏定义> —> < 数据类型><变量>

<变量> —> <字母>|<数组>|<定值>

<函数定义> —> <函数类型><函数名><申明部分(实参)>

<函数类型> —> <无类型(void)>|<整型(int)>|<字符型(char)>|<浮点型(float)>

<函数申明部分> —> <直接申明>|<指针直接申明>

<函数指针直接申明> —> <*>|<数据类型* 指针>

<函数直接申明> —> <数据类型 参数名(行参)>|<无参数>

<函数内容> —><变量说明>|<赋值语句>|<运算>|<语句处理>

<变量说明> —> <数据类型><变量名>

<赋值语句> —><变量名>=<字母>|<变量名>=<数字>|<变量名>=<运算表达式>

<运算> —> <运算表达式>

<运算表达式>—> <变量名><运算符><变量名>|<数字><运算符><数字>|<变量名><运算符><数字>

<运算符>—><+>|<->|<*>|<\>|<%>

<语句处理> —> <判断语句>|<循环语句>|<条件语句>|<排序表达>

 

编译原理实验2----简化版的C语言文法