Location:
Search - yylex
Search list
Description: 使用lex生成的c++代码,对理解编译原理的lex编程有一定的帮助-use lex generated c code, the compiler understands the principle of lex program will help
Platform: |
Size: 2767 |
Author: 肖傲 |
Hits:
Description: 东南大学 课程设计 lex部分
说 明
**本次实验在Visual C++6.0环境下开发**
主要有以下文件:
1 词法分析器 lex.cpp
2 头文件 lex.h
3 测试文件 lex.l.txt
lex工具的使用方法
编译运行 lex.cpp/lex.h,这样就将lex.l.txt转换成Cpp语言程序yylex.cpp
然后使用VC++6.0将lexyy.cpp编译成可执行程序, 这样就识别出了lex.l.txt中的正规表达式
打印出的字幕代表了识别出相应正规表达式时的动作。-Southeast University curriculum design lex ** Note part of this experiment in Visual C 6.0 open environment ** fat mainly in the following documents : a lexical analyzer lex.cpp two documents lex.h three test documents for lex.l.txt lex with the use of compiler running lex.cpp / lex.h. This will be converted into tracing lex.l.txt Language Program yylex.cpp then use the VC 6. 0 to lexyy.cpp compiled executable. This lex.l.txt identified by the formal expression of subtitles printed out on behalf of the formal identification of the corresponding table TAT-time action.
Platform: |
Size: 10635 |
Author: myname |
Hits:
Description: flex 是一个生成扫描器的工具,能够识别文本中的词法模式。flex 读入给定的输入文件,如果没有给定文件名的话,则从标准输入读取,从而获得一个关于需要生成的扫描器的描述。此描述叫做 规则,由正则表达式和 C 代码对组成。flex 的输出是一个 C 代码文件——lex.yy.c——其中定义了 yylex() 函数。编译输出文件并且和 -lfl 库链接生成一个可执行文件。当运行可执行文件的时候,它分析输入文件,为每一个正则表达式寻找匹配。当发现一个匹配时,它执行与此正则表达式相关的 C 代码
Platform: |
Size: 708106 |
Author: myname |
Hits:
Description: 使用lex生成的c++代码,对理解编译原理的lex编程有一定的帮助-use lex generated c code, the compiler understands the principle of lex program will help
Platform: |
Size: 2048 |
Author: 肖傲 |
Hits:
Description: tiger run time supporting files
Platform: |
Size: 49152 |
Author: 斯蒂芬 |
Hits:
Description: 东南大学 课程设计 lex部分
说 明
**本次实验在Visual C++6.0环境下开发**
主要有以下文件:
1 词法分析器 lex.cpp
2 头文件 lex.h
3 测试文件 lex.l.txt
lex工具的使用方法
编译运行 lex.cpp/lex.h,这样就将lex.l.txt转换成Cpp语言程序yylex.cpp
然后使用VC++6.0将lexyy.cpp编译成可执行程序, 这样就识别出了lex.l.txt中的正规表达式
打印出的字幕代表了识别出相应正规表达式时的动作。-Southeast University curriculum design lex** Note part of this experiment in Visual C 6.0 open environment** fat mainly in the following documents : a lexical analyzer lex.cpp two documents lex.h three test documents for lex.l.txt lex with the use of compiler running lex.cpp/lex.h. This will be converted into tracing lex.l.txt Language Program yylex.cpp then use the VC 6. 0 to lexyy.cpp compiled executable. This lex.l.txt identified by the formal expression of subtitles printed out on behalf of the formal identification of the corresponding table TAT-time action.
Platform: |
Size: 10240 |
Author: myname |
Hits:
Description: flex 是一个生成扫描器的工具,能够识别文本中的词法模式。flex 读入给定的输入文件,如果没有给定文件名的话,则从标准输入读取,从而获得一个关于需要生成的扫描器的描述。此描述叫做 规则,由正则表达式和 C 代码对组成。flex 的输出是一个 C 代码文件——lex.yy.c——其中定义了 yylex() 函数。编译输出文件并且和 -lfl 库链接生成一个可执行文件。当运行可执行文件的时候,它分析输入文件,为每一个正则表达式寻找匹配。当发现一个匹配时,它执行与此正则表达式相关的 C 代码-flex generated scanner is a tool that can identify lexical patterns in text. flex time into the given input file, in the absence of a given file name, then read from standard input, and thus on the need to generate a description of the scanner. This description is called the rules, by the regular expression and the composition of C code. the output of flex is a C code file- lex. yy.c-- which defines the yylex () function. Output file and compile and link-lfl library to generate an executable file. When running an executable file, it analyzes the input file, for each regular expression match to find. When they find a match, it is the implementation of regular expressions with the related C code
Platform: |
Size: 707584 |
Author: myname |
Hits:
Description: #include<stdio.h>
#include<string.h>
#include<limits.h>
#include<unistd.h>
#include<sys/types.h>
#define PROMPT_STRING "[myshell]$"
#define QUIT_STRING "exit\n"
static char inbuf[MAX_CANON]
char * g_ptr
char * g_lim
extern void yylex()
int main (void){
for( ){
if(fputs(PROMPT_STRING,stdout)==EOF)
continue
if(fgets(inbuf,MAX_CANON,stdin)==NULL)
continue
if(strcmp(inbuf,QUIT_STRING)==0)
break
g_ptr = inbuf
g_lim = inbuf + strlen(inbuf)
yylex()
}
return 0
}
-# Include <stdio.h># Include <string.h># Include <limits.h># Include <unistd.h># Include <sys/types.h># Define PROMPT_STRING [myshell] $ # define QUIT_STRING exit static char inbuf [MAX_CANON] char* g_ptr char* g_lim extern void yylex () int main (void) (for () (if (fputs (PROMPT_STRING, stdout) == EOF) continue if (fgets (inbuf, MAX_CANON, stdin) == NULL) continue if (strcmp (inbuf, QUIT_STRING) == 0) break g_ptr = inbuf g_lim = inbuf+ strlen (inbuf) yylex ()) return 0)
Platform: |
Size: 32768 |
Author: 李明 |
Hits:
Description: **本次实验在Visual Studio.NET 2003环境下开发**
此压缩包内包括以下五个文件:
1.Lex的源代码文件 Lex.cpp
2.Lex的测试输入文件 test.txt
3.测试文件需包含的头文件 yytab.h
4.经过Lex生成的结果文件yylex.cpp
5.说明
关于Lex:
本实验中完成的Lex可以完成以下算法:
1.输入文件解析
2.多个NFA合并
3.NFA转换DFA
4.最小化DFA
5.生成代码
关于输入文件格式:
此Lex的缺点是对输入文件的错误识别能力较弱,并且如不按照格式要求书写输入文件,可能会使程序
报错。这个缺点,我们会尽快改正。
此Lex所使用的特殊符号:
[]{}()|*
其中若在需要识别的串中使用[]()|*,则在前面加上\即可,例如:需要识别||,[,则写成\|\|,\[即可。-Visual Studio.NET 2003
source :lex.cpp
Platform: |
Size: 652288 |
Author: 王伟 |
Hits:
Description: 利用linux下的flex生成一个词法分析器,输入文法的正则表达式,加入相关处理函数。由main()调用yylex()入口函数执行词法分析
-Use under linux flex to generate a lexical analyzer input grammar regex adding handler function. Yylex () is called by the main () entry function to perform lexical analysis
Platform: |
Size: 48128 |
Author: |
Hits:
Description: yylex - scanner front-end for flex.
Platform: |
Size: 5120 |
Author: meigincou |
Hits: