前言
在实践中, 通常需要向前看一个字符.
比如, 当读到一个 非字母或数字的字符 时才能确定已经读到一个标识符的结尾. 因此, 这个字符不是id词素的一部分.
采用双缓冲区方案能够安全地处理向前看多个符号的问题. 然后, 将考虑一种改进方案, 使用哨兵标记来节约用于检查缓冲区末端的时间. {P72}
前情提要
一、缓冲区对
二、哨兵标记
三、实现双缓冲区
正文
一、缓冲区对
描述:
两个交替读入的缓冲区, 容量为N个字符, 使用系统命令一次性将N个字符读入到缓冲区;
如果输入字符不足N个, 则有特殊字符EOF来标记文件结尾;
程序维护两个指针lexemeBeg
1