Page 29 - 4625
P. 29
Далі продовжуємо у тому ж стилі
Рисунок 8
Після виділення нової лексеми програмний модуль пере-
ходить у початковий стан. Перед звертанням до функції, яка
виділяє лексему з вхідного тексту, необхідно виконати функ-
цію ungetch(fp).
Окрім виділення лексем із вхідного тексту програми
лексичний аналізатор повинен виконувати функцію локалізації
лексичних помилок. Функція локалізації лексичної помилки
повинна "пропустити" фрагмент тексту вхідної програми міні-
мальної довжини так, щоб подальша робота була продовжена.
Очевидно, що таку умову задовольняють літери, за якими
лексичний аналізатор переходить з початкового стану в інші.
З діаграм переходів видно, що це – літери з множини {
проміжок, \n, \v, \r, \t, \b, +, -, …}.
28