내 파서 파일 (Flex/Bison 파일을 컴파일 한 후 바이너리 파일)을 실행할 때 다음 오류가 발생합니다. 여기 error: syntax error, unexpected TKN_PRIMARY, expecting end of file
구문 오류, 예기치 않은 토큰, 파일 끝 부분 예상
이 규칙은 플렉스 코드에 정의되어
<PRIMARY_MME_STATE>{number} {
lexVal = YYText();
std::cout<<"PRIMARY MME --> "<<lexVal<<std::endl;
yylval->strVal = new std::string(lexVal);
return token::TKN_PRIMARYMME;
}
을 그리고 나의 이해는 그 TKN_PRIMARY의 값은 (END %의 토큰 END 0 "파일의 끝"에 대해 정의 된 값 인)는 0이기 때문에 TKN_PRIMARY를 반환하는 대신 반환되는 토큰 END가 필요합니다. 제 이해가 정확하다면 의견을주십시오. 또한이 문제를 해결하는 방법도 있습니다.
나는 PRIMARY MME -> 0이 인쇄되는 것을보고 아무 것도 보지 않으면 – user2313227
.y 및 .lex 파일을 게시해야합니다. 그러면 문제가 분명해질 수 있습니다. – pbhd