Я установил VMware на свой рабочий стол. Затем я установил Ubuntu 10.10 в VMware. Я установил пакеты flex_2.5.35-9_i386.deb и m4_1.4.13-3_i386.deb для программ lex. Я пытался запускать программы lex через терминал, проблем с компиляцией нет. Но когда я ввожу ввод, он продолжает принимать его. Никогда не выходил на переработку. Он показывает пустым после ввода ввода. Есть ли какая-то проблема с версией или пакетами.
Под вводом вы подразумеваете, что вы запускаете flex
в терминале, а затем пишете правила лексизма вручную в терминале?
В этом случае вы указываете конец ввода с помощью EOF (end файла), который генерируется при наборе Ctrl-d
. Это также относится к любым другим терминальным утилитам, которые считывают ввод из stdin
.
Минимальный пример:
user@host:~ flex
%%
... добавить конец файла с ctrl-d
, и результат будет записан в lex.yy.c
в том же каталоге.