我在flex示例中看到以下示例。我能够编译它。但是我不确定我应该给它什么。有人能让我知道吗?谢谢。
/*
* myname2.lex : A sample Flex program
* that does token replacement.
*/
%{
#include <stdio.h>
%}
%x STRING
%%
\" ECHO; BEGIN(STRING);
<STRING>[^\"\n]* ECHO;
<STRING>\" ECHO; BEGIN(INITIAL);
%NAME { printf("%s",getenv("LOGNAME")); }
%HOST { printf("%s",getenv("HOST")); }
%HOSTTYPE { printf("%s",getenv("HOSTTYPE"));}
%HOME { printf("%s",getenv("HOME")); }
答案 0 :(得分:0)
规则%NAME
,%HOST
,%HOSTTYPE
和%HOME
分别与这些确切的字符串匹配。因此,您可以输入这些内容并查看其相应的操作执行。
您还可以输入其中两个用引号引起来的引号(例如"%HOST"
),并注意由于将整个内容视为字符串文字,因此不会执行其操作。