首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >flex常用全局变量和宏

flex常用全局变量和宏

原创
作者头像
devecor
修改2019-10-08 12:08:40
9120
修改2019-10-08 12:08:40
举报
文章被收录于专栏:数学与计算机数学与计算机
  1. FILE yyin, yyout 为指向字符出入和输出结果输出的文件指针. 如果用户未对其进行定义, 则设置为标准文件io: stdin/stdout.
  2. int yylex() 为词法分析程序, 自动移动文件指针*yyin*yyout. 在定义模式动作时, 用户可以用return语句结束yylex(), 注意必须返回一个整数. 由于yylex()的运行环境都是以全局变量方式报讯的, 在下一次调用时, yylex()可从上次扫描的地方继续扫描. 若用户未定义yylex(), yylex()会继续扫描文件直到遇到文件结束符EOF为止. 遇到EOF时, yylex()会调用 int yywarp()函数. yywarp函数必须由开发者自己提供, 若该函数返回非0值, 则yylex()返回0而结束, 否则, yylex()继续对yyin指向的文件扫描.
  3. char *yytext 存放当前被识别的词形
  4. int yyleng 存放字符串 yytext的长度
  5. yymore() 将当前识别的词形保留在yytext中, 分析器下次扫描时的词追加在yytext中.
hello    { printf("%s", yytext);  yymore();  }
word    { printf("%s", yytext); }

当输入串为"helloworld"时, 将会在控制台打印出"hellohelloworld".

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档