我想用這個成語:兩個有關彈性簡單的問題/ C
yy_scan_string(line);
int i;
while ((i = yylex()))
....
,其中這兩個功能都是在我的主C文件柔性產生lex.yy.c中定義。到目前爲止,我是
#including "lex.yy.c"
但它似乎魚腥味。我該如何做到正確的C方式? 其次,我想我的.L文件的最後一行,
. { return WORD; }
不再返回一個「字」的道理,而是返回其輸入。對於爲例(它是一個短小Linux外殼)
ls > ls.txt
目前返回2個WORD令牌,更大的令牌,以及6個WORD令牌,當我想「LS」大於「ls.txt」的返回。當然,yylex()只能返回一個類型,那麼獲得所需結果的可接受方式是什麼?
謝謝。
您必須聲明**函數(並稍後將實現文件鏈接在一起)。您不需要包含.c文件以便使用它們中定義的功能。 – 2014-02-05 17:37:18
你可以使用'。 {return * yytext; }'返回被讀取的字符。那麼你會在語法中使用''<''。不推薦,但你可以做到。 –