문제

나는 사이트를 검색했지만 내가 찾고 있던 대답을 찾지 못했기 때문에 여기에 정말 빠른 질문이 있습니다.

나는 그런 일을하려고 노력하고 있습니다.

#ifdef _WIN32 || _WIN64
     #include <conio.h>
#endif

어떻게 그런 일을 할 수 있습니까? _WIN32는 32 및 64 비트 Wind 전처리 서자 지시문과 함께 이와 같은 논리 연산자를 사용할 수 있는지 여부에 더 관심이 있습니다.

gcc로 컴파일 : 나는 얻는다 :

경고 : #ifdef Directive가 끝나는 추가 토큰이며 기본적으로 첫 번째 매크로를 사용하고 나머지는 무시합니다.

도움이 되었습니까?

해결책

노력하다:

#if defined(_WIN32) || defined(_WIN64)
// do stuff
#endif

그만큼 한정된 매크로는 이름이 정의되었는지 여부를 테스트하고 결과에 논리 연산자를 적용 할 수 있습니다.

다른 팁

사용해야합니다 #if 그리고 특수 운영자 defined

이런 식으로 가능해야한다고 생각합니다.

#if defined block1 || defined block2 /*or any other boolean operator*/
   /*Code*/
#endif

추가 정보 여기

정의 된 사용 :

#if defined(A) || defined(B)
    #include <whatever.h>
#endif
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top