Microsoft Visual C++ facts for kids
![]() |
|
Developer(s) | Microsoft |
---|---|
Initial release | February 1993 |
Stable release |
14.40.33810
|
Written in | C++ |
Operating system | Windows |
Platform | IA-32, x86-64 and ARM |
Available in | English, Chinese (Simplified & Traditional), Czech, French, German, Italian, Japanese, Korean, Polish, Portuguese (Brazilian), Russian, Spanish, Turkish |
Type | Compiler |
License | Trialware and freeware |
Microsoft Visual C++ (often called MSVC) is a special program made by Microsoft. It helps computer programmers write and build software using C, C++, and other similar programming languages.
MSVC used to be a separate product. Now, it's part of a bigger set of tools called Visual Studio. You can get it as a free version or a trial version. It has cool tools to help you create and fix C++ code. This is especially useful for programs made for Windows, DirectX (for games!), and .NET (for many apps).
Many computer programs need special "Visual C++ runtime library packages" to work. Think of these as helper files. They are often installed separately. This way, many different programs can use the same helper files without needing to install them over and over. These packages contain standard libraries that lots of applications use.
Contents
History of Visual C++
Before Visual C++, there was a program called Microsoft C/C++. There were also simpler versions like Microsoft QuickC. The Visual C++ compiler (the part that turns code into a program) is still known as Microsoft C/C++.
Early Versions (16-bit)
- Microsoft C 1.0 was the very first C product from Microsoft in 1983.
- Later versions, like C 2.0 and C 3.0, added more features. They helped programmers use more computer memory.
- C 4.0 brought a tool called CodeView. This was a debugger that helped find mistakes in code.
- C 5.0 and C 5.1 improved memory use and allowed programs to work on different operating systems like OS/2.
- C 6.0, released in 1989, added a new way to work with code called Programmer's Workbench.
- C/C++ 7.0 came out in 1992. It was the first to include built-in support for C++ and MFC. MFC is a set of tools that makes it easier to build Windows programs.
- Visual C++ 1.0 was the first "Visual" version. It came out in 1993. It had MFC 2.0.
- Visual C++ 1.5, released in 1993, added support for OLE and ODBC. These help programs share information. This was also the first version that only came on a CD-ROM.
Later Versions (32-bit and 64-bit)
- Visual C++ 1.0 (32-bit Edition) was the first for 32-bit computers in 1993.
- Visual C++ 2.0 was the first version that was only 32-bit. It came out before Windows 95 was even released!
- Visual C++ 4.0, released in 1995, introduced the Developer Studio. This was a new way to organize the programming tools.
- Visual C++ 5.0 (1997) and Visual C++ 6.0 (1998) were big updates. VC6 is still popular for older projects.
- Visual C++ .NET 2002 (also known as 7.0) was released in 2002. It added support for .NET 1.0 and Visual C#.
- Visual C++ .NET 2003 (7.1) was an improved version of 2002. It was the first to support the C99 "long long" feature.
- Visual C++ 2005 (8.0) came out in 2005. It supported .NET 2.0 and introduced a new way to use C++ with .NET. This was the last version that could work on older systems like Windows 98 and Windows Me.
- Visual C++ 2008 (9.0) was released in 2007. It supported .NET 3.5.
- Visual C++ 2010 (10.0) came out in 2010. It added new features for parallel computing (doing many things at once). It also started to support parts of the newer C++11 standard.
- Visual C++ 2012 (11.0) and Visual C++ 2013 (12.0) continued to improve C++11 support.
- Visual C++ 2015 (14.0) was released in 2015. It brought even more C++11/14/17 support.
- Newer versions like Visual C++ 2017 (14.1), Visual C++ 2019 (14.20), and Visual C++ 2022 (14.30) have continued to update and improve.
How Versions Are Numbered
There are a few ways to tell the version of Visual C++.
- The compiler version is the oldest number. You can see it by typing `cl.exe` in the command line.
- The Visual product version (like "17.3.4") tells you which Visual Studio package the compiler came with.
- The C/C++ Runtime Library version (like "14.3") is for the basic code that programs need to run.
Compatibility
When you build programs with Visual C++, it's important that different parts of your program can work together.
ABI (Application Binary Interface)
The way Visual C++ builds programs has changed over time. This means that programs built with different versions of the compiler might not always work perfectly together. Microsoft suggests using simpler ways to connect different parts of a program if they were built with different compiler versions.
However, all Visual C++ versions from 14.x onwards are designed to work well together. This means you can mix programs built with these newer versions. Just make sure you use the newest tools for everything.
C Runtime Libraries
Visual C++ comes with different versions of C runtime libraries. These are like basic building blocks for your code. If you use different libraries in the same program, it can sometimes cause problems. Microsoft suggests using the "multithreaded, dynamic link library" option when you build your code. This helps avoid common issues.
POSIX
The Visual C++ tools support many POSIX features. POSIX is a set of rules for how operating systems should work. However, the compiler might show a warning when you use these features. This is because standard C and C++ rules say these features should have an underscore (`_`) in front of their names. But if you're making a program for a system that follows POSIX strictly, it's often better to just turn off the warning.
C Language Support
For many years, the Visual C++ compiler only fully supported an older version of the C standard from 1989. It didn't fully support the newer C99 standard.
- Visual C++ 2013 finally added some C99 features.
- Visual C++ 2015 improved C99 support even more.
- Later versions, like Visual C++ 2017, still didn't support all the changes from the C11 standard.
- In 2018, Microsoft started to update the preprocessor (a part of the compiler) to get ready for C11.
- By 2020, Microsoft announced that MSVC would support C11 and C17 standards in version 16.8. They also planned to add support for "atomics" and "threads" later, which are important for advanced programming.
C++ Language Support
By default, older versions of MSVC might not catch all mistakes in C++ code right away. Newer versions fix this. You can enable a special setting (`/permissive-`) to make the compiler check more strictly.
See also
In Spanish: Microsoft Visual C++ para niños