bison

    0

    1답변

    대학에서 C 언어로 미니 셸을 만드는 프로젝트가 있습니다. 명령 줄을 구문 분석하기 위해 필자는 lex 및 yacc 도구를 사용합니다. 하지만 선을 분석하고 싶습니다. 토큰이 발견되면 내 struct 명령에 인수를 추가하고 명령을 실행하기 위해 개행 문자를 찾으면 yyparse를 종료합니다. 내 렉스 파일 ... 인쇄 프롬프트 후 및 분석 relauch :

    1

    1답변

    나는 Bison/Flex를 배우고 이미 작성된 C++ 코드를 다운로드하려고했습니다. 이미 생성 된 파서가있는이 (http://www.jonathanbeard.io/tutorials/FlexBisonC++) 문서를 발견했습니다. 지금은 PROJECT(CTM) CMAKE_MINIMUM_REQUIRED(VERSION 2.8) SET(CMAKE_CXX_ST

    0

    1답변

    나는 Bison을 사용하여 C 파서를 쓰고있다. 당신은 예를 들어 수행 할 때 %parse-param {YYSTYPE *root} /* Used to detect the statement/declaration type, and print the tokens back out again */ /* Tokens defined here, etc */ %star

    0

    1답변

    연습용으로 작은 컴파일러를 설계하려고합니다. 아직 중간 코드 최적화 또는 아직 최적화에 관한 내용을 읽지 않았습니다. 지금까지 필자는 FLEX/BISON 파일을 사용하여 문법을 설명했으며 잘 작동하는 표현식을 사용했습니다. 이렇게하는 동안 나는 상수 표현과 같아야하고 상수 등가에 대한 모든 덧셈과 곱셈 식을 반복하고 파싱하는 동안 그 값을 계산해야한다고 생

    0

    1답변

    Flex와 들소 자신의 main 함수를 정의, 그래서 라이브러리 libfl 및 liby 내 코드를 컴파일 할 때, ld이 main이 여러 번 선언되기 때문에 연결하지 않으려는 정의. 이 문제를 어떻게 해결할 수 있습니까?

    0

    1답변

    yacc로 프로그램을 컴파일하면 오류가 발생합니다. 간접적 인 재귀 또는 다른 것을 사용했는지 이해할 수 없습니다. 나는 yacc에별로 관심이 없다. 내 코드의 규칙 섹션은 다음과 같습니다 내가 가진 stmtfor : exprfor OPENB CLOSEB { printf("\nValid For statement!\n"); } | exprfor

    0

    1답변

    bison과 flex를 사용하여 구현 된 계산기의 예제를 테스트하고 있습니다. 예제 코드는 파일 "RPN-모든 calc2.y"에서, : %{ #define YYSTYPE double #include <math.h> #include <stdio.h> #include <stdlib.h> int yyerror(const char* s); int yyl

    1

    1답변

    나는 bison flex를 사용하여 중온 계산기를 작성하는 예제를 테스트하고 있습니다. 나는 모든 것이 괄호 "()"를 제외하고 옳다는 것을 발견했다. 대괄호로 계산을 입력 할 때 계산 결과가 올바르지 않습니다. 여기에 파일 "중위 - calc.y" /* bison grammar file for infix notation calculator */ %{

    0

    1답변

    Yacc/Bison을 사용하여 문법 시작 규칙의 'return'값 ($$ 변수)을 얻는 방법? yyparse 파서의 오류 코드를 반환합니다.

    0

    1답변

    나는 들소를 배우고 문제를 만난다. {1, 2, 3}과 같은 정수 세트를 허용하도록 RE를 설계하려고합니다. 다음은 제 코드의 일부입니다. 간단한 계산이 세트 코드가 올바르게 작동 - I 입력 "{2} {1}"때 printf("given {, str_to_out before %s \n", str_to_out); str_to_out[0] = '{'; pr