Visual C++ 各个版本对应的 _MSC_VER

Visual Studio 6.0 through Visual Studio 2015 (14.0)

  • For major releases, _MSC_VER increases by 100. _MSC_FULL_VER increases by 10,000,000.

  • For minor releases, _MSC_VER increases by 10. _MSC_FULL_VER increases by 1,000,000.

     Note

    Visual Studio .NET 2003 was considered a minor release.

Visual Studio 2017 and later

  • For major releases, the minor version increases by 10.
  • For minor releases, the minor version increases by 1 starting with Visual Studio 2017 version 15.3.

Service releases starting with Visual Studio 2017

Servicing releases can be distinguished by _MSC_FULL_VER. The build field (the BBBBB in the MMNNBBBBB version number) typically increases by 1.

For example, two cases where _MSC_FULL_VER is useful is to distinguish Visual Studio 2019 16.8 from 16.9, and Visual Studio 2019 16.10 from 16.11. That's because those versions share the same major and minor versions, and so have the same value for _MSC_VER.

To distinguish these versions, use _MSC_FULL_VER.
The minimum value of _MSC_FULL_VER for Visual Studio 2019 16.8 is 192829333.
The minimum value of _MSC_FULL_VER for Visual Studio 2019 16.9 is 192829910.

Version macros

Recall that the version number consists of four fields:

M - 主版本 major version (two digits)
N - 次要版本 minor version (two digits)
B - 内部版本 build version (five digits)
R - 修订版本 revision version

_MSC_VER distinguishes between major and minor releases. It has the form: MMNN.

_MSC_FULL_VER represents the major, minor, and build version of the compiler. It has the form: MMNNBBBBB. Use it to distinguish between different versions of the compiler, including servicing releases. See Service releases starting with Visual Studio 2017 for more information about Visual Studio 2019 16.8, 16.9, 16.10 and 16.11.

_MSC_BUILD represents the build version of the compiler. It has the form: R. Use it to distinguish between servicing releases.

When the major version changed between Visual Studio 2013 and Visual Studio 2015, _MSC_VER reflected the change by going from 1800 to 1900.

An example of a minor change is from Visual Studio 2022 17.1 to Visual Studio 2022 17.2. In that case, _MSC_VER changed from 1931 to 1932.

The following table lists the Visual C++ compiler _MSC_VER for each Visual Studio release:

Visual Studio 版本_MSC_VER
Visual Studio 6.01200
Visual Studio .NET 2002 (7.0)1300
Visual Studio .NET 2003 (7.1)1310
Visual Studio 2005 (8.0)1400
Visual Studio 2008 (9.0)1500
Visual Studio 2010 (10.0)1600
Visual Studio 2012 (11.0)1700
Visual Studio 2013 (12.0)1800
Visual Studio 2015 (14.0)1900
Visual Studio 2017 RTW (15.0)1910
Visual Studio 2017 版本 15.31911
Visual Studio 2017 版本 15.51912
Visual Studio 2017 版本 15.61913
Visual Studio 2017 15.7 版1914
Visual Studio 2017 版本 15.81915
Visual Studio 2017 版本 15.91916
Visual Studio 2019 RTW 16.01920
Visual Studio 2019 版本 16.11921
Visual Studio 2019 版本 16.21922
Visual Studio 2019 版本 16.31923
Visual Studio 2019 版本 16.41924
Visual Studio 2019 版本 16.51925
Visual Studio 2019 版本 16.61926
Visual Studio 2019 版本 16.71927
Visual Studio 2019 版本 16.816.9 a1928
Visual Studio 2019 版本 16.1016.11 b1929
Visual Studio 2022 RTW 17.01930
Visual Studio 2022 版本 17.11931
Visual Studio 2022 版本 17.21932
Visual Studio 2022 版本 17.31933
Visual Studio 2022 版本 17.41934
Visual Studio 2022 版本 17.51935
Visual Studio 2022 版本 17.61936
Visual Studio 2022 版本 17.71937
Visual Studio 2022 版本 17.81938
Visual Studio 2022 版本 17.91939
Visual Studio 2022 版本 17.101940

a Visual Studio 2019 16.8 和 16.9 共享相同的主版本和次要版本(因此具有相同的 _MSC_VER 值)。 若要区分它们,请使用 _MSC_FULL_VER。 Visual Studio 2019 16.8 的 _MSC_FULL_VER 的最小值为 192829333。 Visual Studio 2019 16.9 的 _MSC_FULL_VER 的最小值为 192829910。

b Visual Studio 2019 16.10 和 16.11 共享相同的主版本和次要版本(因此具有相同的 _MSC_VER 值)。 若要区分它们,请使用 _MSC_FULL_VER。 Visual Studio 2019 16.10 的 _MSC_FULL_VER 的最小值为 192929917。 Visual Studio 2019 16.11 的 _MSC_FULL_VER 的最小值为 192930129。

reference links:
https://docs.microsoft.com/zh-cn/cpp/preprocessor/predefined-macros?view=vs-2019
https://learn.microsoft.com/zh-cn/cpp/overview/compiler-versions?view=msvc-170#service-releases-starting-with-visual-studio-2017
https://blog.csdn.net/weixin_39956356/article/details/108547199
https://blog.csdn.net/weixin_39956356/article/details/108547787

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值