표준의 좋은 C++ 구현을 알고있는 분 C 전처리 기가 있습니까? 나는 C++ C 코드를 분석 관련 프로젝트에서 일하고 있어요, 나는 매크로 등을 지원하기 좋아하지만 C 전처리 자신을 구현에 관심이 아니에요 것C 전처리 기의 C++ 구현
.
이상적으로는 프리 프로세서는 메인 C 파일의 파일 이름에 걸릴 것이고, 전처리 C 코드의 스트림을 반환합니다.
누구나 간결하지만 포괄적 인 참조를 추천 할 수 있습니까? C 전처리?
표준의 좋은 C++ 구현을 알고있는 분 C 전처리 기가 있습니까? 나는 C++ C 코드를 분석 관련 프로젝트에서 일하고 있어요, 나는 매크로 등을 지원하기 좋아하지만 C 전처리 자신을 구현에 관심이 아니에요 것C 전처리 기의 C++ 구현
.
이상적으로는 프리 프로세서는 메인 C 파일의 파일 이름에 걸릴 것이고, 전처리 C 코드의 스트림을 반환합니다.
누구나 간결하지만 포괄적 인 참조를 추천 할 수 있습니까? C 전처리?
Boost.Wave을 볼 수 있습니다.
Lex and Yacc (각각 Flex 및 Bison이라고도 함)을 사용해야합니다. 이들은 언어 구문 분석에 사용되는 도구입니다. This excellent book은 훌륭한 대학 도서관에서 입수 할 수 있습니다.
이 질문에 어떻게 대답합니까? –
이러한 도구는 도구 일 뿐이므로 구문 분석 토큰/문법 결과를 조작하려면 c/C++ 코드를 작성해야합니다. 이것이 전 처리기에 대한 과잉이라고 판단됩니다. – rtpg
이들은 또한 전처리 기의 어려운 부분 (즉, 예외적으로 복잡한 규칙이있는 매크로 대체)을 돕지 않습니다. –
렉스/yacc 파일을 찾으셨습니까? – arbithero
GNU cpp의 문제점은 무엇입니까? –
대부분의 C 또는 C++ 컴파일러에는 전처리 된 파일 만 출력 할 수있는 명령 행 스위치가 있습니다. 과거에는 여러 코드 분석 도구 (필자가 작성한 여러 가지 사내 도구 포함)가 사전 처리 기능을 사용하여 자체적으로 구현하지 않아도되었습니다. 나는 마이크로 소프트의 C++ 컴파일러가 15 년 전에이 기능을 가지고 있었음을 압니다. 그리고 GNU cpp도 잘하고 있습니다. –