Я очень плохо знаком с Lex и Yacc. У меня есть программа Лекс. Пример: wordcount.l
Я использую окна и замазку.
Я просто пытаюсь запустить этот файл..
Файл
wordcount.l
находится на диске C?Я скомпилирую программу Lex, и она сгенерирует программу
.c
, а потом что мне запустить?
Я попробовал в командной строке: Lex wordcount.l
но я просто получаю, что файл не найден...
количество слов.l
%{
#include <stdlib.h>
#include <stdio.h>
int charCount=0;
int wordCount=0;
int lineCount=0;
%}
%%
\n {charCount++; lineCount++;}
[^ \t\n]+ {wordCount++; charCount+=yyleng;}
. {charCount++;}
%%
main(argc, argv)
int argc;
char** argv;
{
if (argc > 1)
{
FILE *file;
file = fopen(argv[1], "r");
if (!file)
{
fprintf(stderr, "Could not open %s\n", argv[1]);
exit(1);
}
yyin = file;
}
yylex();
printf("%d %d %d\n", charCount, wordCount, lineCount);
}
В замазке, как мне скомпилировать и запустить эту программу?