我正在嘗試製作一個Bison解析器來處理UTF-8字符。我不希望解析器實際解釋Unicode字符值,但我希望它將UTF-8字符串解析爲一個字節序列。野牛可以解析UTF-8字符嗎?
眼下,野牛生成以下代碼這是有問題:
if (yychar <= YYEOF)
{
yychar = yytoken = YYEOF;
YYDPRINTF ((stderr, "Now at end of input.\n"));
}
的問題是,UTF-8字符串的許多字節將具有負值,和Bison解釋負值作爲EOF,並停下來。
有沒有辦法解決這個問題?
那麼,我的詞法分析器處理UTF-8字符就好了,但Bison解析器只要看到一個負值就會停止解析。請指教。 – 2009-06-01 14:52:16
你一次讀取1個字節的文件嗎?或一次utf-8編碼的字符? – eduffy 2009-06-01 14:53:41
一次1個字節。 – 2009-06-01 14:59:29