词法分析器:代码注释
前沿:词法分析器是将一段程序的代码按照类别分开. 一般来说是将关键字, 变量名 , 常数 运算符( + _ * / )和界符分类 词法分析算是编译的基础把 今天上编译原理的实验课, 看了看 老师给的代码 添加了一些注释 大致的流程是这样的: 规定关键字的符号是10 数字的符号是数字本身 + - * = 这些符号代码中的case里面有(分别是13 14 ...),可以看懂的 首先, 把程序存到制定的内存区域, 这里是划出了一个连续的空间(放到字符数组); 然后再按字节读取里面的内容 , 当读到空格(" ")或者是换行符号(\n)的时候,就默认是一个单词啦,() 把这个单词放进一个另外一个数组里面,美其名曰token[]; 获得这个token之后 , 首先判断token中的每一个字符是不是属于a-z的字符里面(需要一个while循环遍历) 如果在读取的字符不是一个字母, 那在看看是不是数字(0-9),如果是的话,那就写成相应的标识符 如果读取的是+ 那么将syn(表示代号)为13 每次识别出来之后,都以 ("syn " , string )的形式输出 /**C语言的词法分析 **/ #include<stdio.h> #include<string.h> /** 程序规定: 1、关键字:"function","if","then","while","do","endfunc"; 2