엠에스시벌?이 뭘까 생각하다가 무슨 버전인 듯한데, 역시 모를 땐 구글링..
Chatgpt 얘는 입만 열면 그짓말이 자동으로 나와 신뢰도가 하락했다
_MSC_VER(엠에스시벌)
: 컴파일러 버전 번호의 주 번호 요소와 부 번호 요소를 인코딩하는 정수 리터럴로 정의 된다.
메이저 번호는 마침표로 구분된 버전 번호의 첫 번째 요소이고 마이너 번호는 두 번째 요소이다.
예를 들어, Microsoft C/C++ 컴파일러의 버전 번호가 17.00.51106.1인 경우 _MSC_VER매크로는 1700이다.
컴파일러의 버전 번호를 보려면 명령줄에 cl/?를 입력하면 된다.
특정 버전의 Visual Studio 또는 그 이후 버전에서 컴파일러 릴리스 또는 업데이트를 테스트하려면 >=연산자를 사용한다.
_MSC_VER알려진 버전과 비교하기 위해 조건부 지시문에서 이를 사용할 수 있다 . 비교할 상호 배타적인 버전이 여러 개 있는 경우 버전 번호의 내림차순으로 비교 순서를 지정하자. 예를 들어 이 코드는 Visual Studio 2017 이상에서 릴리스된 컴파일러를 확인한다. 다음으로 Visual Studio 2015 이후에 릴리스된 컴파일러를 확인고, Visual Studio 2015 이전에 릴리스된 모든 컴파일러를 확인한다.
#if _MSC_VER >= 1910
// . . .
#elif _MSC_VER >= 1900
// . . .
#else
// . . .
#endif
주 번호와 부 번호를 공유하는 컴파일러 버전을 테스트하려면 _MSC_FULL_VER 비교를 위해 주 번호, 부번호, 빌드 번호를 사용해야한다.
자세한 내용은 여기를 https://devblogs.microsoft.com/cppblog/visual-c-compiler-version/ 참고하자.
_MSC_VER는 윈도우 기반 컴파일러를 사용할 때 항상 정의된다.
모든 버전에서.
- 공식 문서 -
'Language & Framework & GIT > C++' 카테고리의 다른 글
[C++] Main함수 - 매개변수 argc와 argv (64) | 2023.11.10 |
---|---|
[C++] 스마트 포인터(SMART POINTER) (89) | 2023.10.27 |
C++ std::string 원소 접근 방법(front, back, at, operator) (74) | 2023.10.16 |
[C++] fopen() 함수란? (105) | 2023.08.04 |
[C++] WORD, DWORD, QWORD ? (49) | 2023.08.03 |
댓글