Использование UNIX для синтаксического и лексического анализа

Использование Yacc


Можно откомпилировать спецификации Yacc в файл с помощью команды:

уасс example.y

Обычно для исходных файлов Yacc используется расширение. у.

При этом будет создан файл у.tab.с из 508 строк исходного кода С, соответствующего предыдущему примеру. Можно также создать файл заголовка, y.tab.h, указав опцию -d. В файле с исходным кодом С находится функция уурагsе(), являющаяся собственно синтаксическим анализатором. Она не имеет аргументов и возвращает 0 при удачном проведении анализа и 1 при возникновении синтаксической ошибки. Можно откомпилировать этот файл:

сс у. tab. с -lу

Будет создан выполняемый файл a.out. Библиотека Yacc подключает по умолчанию стандартную функцию main () и все дополнительные подпрограммы, необходимые для выполнения. При этом не подключается подпрограмма передачи лексемы в синтаксический анализатор уу1ех (). Необходимо или использовать созданный Lex лексический анализатор, или написать свой собственный.



Содержание раздела