Home > Net >  What's the association between vc100 (default generator for Visual Studio 2010) and C 11/C 14
What's the association between vc100 (default generator for Visual Studio 2010) and C 11/C 14

Time:01-06

I'm a new hand in C and I've got a question about some Visual Studio version names.

C 98, C 11 and C 14 are versions of the ISO/IEC 14882 standard for the C programming language; this means, for example, C 11 has some new features added or modified compared to C 98, C 14 has some new features added or modified compared to C 11, like the upgrade.

When I'm using Visual Studio as the IDE to develop programs, I also noticed another thing called "vc100" (for Visual Studio 2010), "vc140" (for Visual Studio 2019)... it's called generator. I supposed that's also called the version of compiler, like the version of GCC.

So, the confusion is, what's the association between C 11 and the generator name (like "vc100"); or, to be specific, does the year part in the generator called "Visual Studio 2010" (2010 is the year here) means it doesn't support C 11 and later, but only supports C 98?

CodePudding user response:

There is no direct connection or association between the names of the various versions of the Visual C/C compiler and any particular C Standard. Nor is there actually a direct correlation between the name of the compiler (e.g. vc100) and the 'year' part of the name of the corresponding version of Visual Studio.

In the case of VS-2010, there is an incidental overlap between the year and the version number (10.0); but, as can be seen from the Visual Studio Tag Wiki, that year/version is the only one where the numbers coincide.

Note also that a compiler released in 2010 (as was vc100) is extremely unlikely to fully support the C 11 Standard (though VS and MSVC often have provisional support for the 'next' due Standard, if a working draft is available); however, later versions of MSVC generally have 'retro' support for several earlier Standards: The latest version (VS-2022) has the option of using C 14, C 17, C 20 or (experimentally) the provisional C 23 Standard. When compiling code with Visual Studio, you can select/specify which of the C Standards you want to follow in each project's settings.

  • Related