Lex / Yacc:用于标记和解析C源文件的代码

时间:2016-11-14 15:35:45

标签: yacc lex

现在,我正在研究下面的代码 http://www.quut.com/c/ANSI-C-grammar-l-2011.html

{L}{A}*                             { return check_type(); }

{HP}{H}+{IS}?                       { return I_CONSTANT; }
{NZ}{D}*{IS}?                       { return I_CONSTANT; }
"0"{O}*{IS}?                        { return I_CONSTANT; }
{CP}?"'"([^'\\\n]|{ES})+"'"         { return I_CONSTANT; }

{D}+{E}{FS}?                        { return F_CONSTANT; }
{D}*"."{D}+{E}?{FS}?                { return F_CONSTANT; }
{D}+"."{E}?{FS}?                    { return F_CONSTANT; }
{HP}{H}+{P}{FS}?                    { return F_CONSTANT; }
{HP}{H}*"."{H}+{P}{FS}?             { return F_CONSTANT; }
{HP}{H}+"."{P}{FS}?                 { return F_CONSTANT; }

({SP}?\"([^"\\\n]|{ES})*\"{WS}*)+   { return STRING_LITERAL; }

我想问一下这部分代码的含义是什么?它与Yacc有什么关系? Yacc代码为http://www.quut.com/c/ANSI-C-grammar-y-2011.html

0 个答案:

没有答案