[討論] 抓不到ID...

作者: finalwave (吃火球賺錢)   2007-05-27 14:35:43
目前在lex中的寫法是
ws [ \t]
digit [0-9]
letter [a-zA-Z_]
number [\-]?{digit}+
%%
[ \t] {}
[\n] {count(); return('\n');}
{number} {return(NUMBER);}
{letter}({letter}|{digit})* {return(ID); }
"VAR" {return(VA);}
"BEGIN" {return(BEG);}
(中間略過)
"(" {return('(');}
")" {return(')');}
. {printf("error token <%s>\n",yytext); return(ERROR);}
這樣寫理論上如果輸入 ASQoswp 不是應該會return(ID)?
但是弄出來卻會顯示
"error token A"
"error token S"
...
"error token p"
也就是對到了 最後一行 沒抓到ID?
是哪裡寫錯了嗎?
有人可以幫我看一下嗎><
作者: sophialiege (with friends)   2007-05-27 16:34:00
@@ 看不出哪裡錯...
作者: nameofevil (雄友一組)   2007-05-27 16:36:00
我也遇過類似的問題呢@__@ 後來就先放棄了~"~
作者: sophialiege (with friends)   2007-05-27 16:43:00
寄一份檔案來給我測試看看吧!?
作者: finalwave (吃火球賺錢)   2007-05-27 17:10:00
要寄到哪裡?
作者: sophialiege (with friends)   2007-05-27 17:49:00
comp07@csie.ntu.edu.tw

Links booklink

Contact Us: admin [ a t ] ucptt.com