1
%{
#include "y.tab.h"
extern int yylval;
%}
%%
[0-9]+ {yylval = atoi (yytext); return NUM;}
[ \t] ;
\n return 0;
. return yytext[0];
%%
當我使用指向該值的yylval時,爲什麼我應該返回NUM?我的意思是NUM代表的是什麼(NUM在YACC部分中被宣告)? NUM是否存儲任何值?爲什麼要返回令牌名稱?
即使有適當的解決方案,我也很困惑這一節。我只是沒有得到返回NUM的正確理由,因爲我在YACC中有指針yylval。