2
프로그램을 토큰 화하기위한 프로그램을 작성하고 있습니다. 나는 C 처리기 지시문을C 전처리 지시어에 대한 Lex 규칙
#.* {printf("\n%s is a PREPROCESSOR DIRECTIVE",yytext);}
에 맞게 다음과 같은 규칙을 작성한하지만 yyin에 입력으로 파일을 사용하는 경우, 파일의 처리기 지시문이 표시 yytext에서 일치하는 비어
예를 들어 나는 yyin이 표준 때 아무 문제가 없습니다
is a PREPROCESSOR DIRECTIVE
수에 있지만 파일이 입력 될 때만 발생합니다. 대체 LEX 규칙이 있습니까?
일반적으로 이미 사전 처리 된 C 프로그램을 구문 분석합니다. 그리고 왜 C 프로그램을 토큰화할 것입니까? 기존의 C 파서를 사용하거나 기존 컴파일러를 확장 할 수 없습니까? (예 : http://gcc-melt.org/, 예 : 'gcc')? –
컴파일러 실습 연습 문제입니다. – Sridhar