Microsoft Visual Studio unterstützt die C-Sprache

Die Visual Studio IDE von Microsoft hat Unterstützung für die Sprachstandards C11 und C17 C hinzugefügt, wodurch die zuvor eingeschränkte Unterstützung der IDE für C. C11 und C17 zu unterstützten Sprachversionen erweitert wird, beginnend mit Visual Studio 2019 16.8 Preview 3, das am 14. September veröffentlicht wurde.

Seit Jahren beschränkt Visual Studio die C-Unterstützung auf das, was für die C ++ - Sprache erforderlich ist, die als Erweiterung von C erstellt wurde. Jetzt wurde dem Compiler ein konformer, tokenbasierter Präprozessor hinzugefügt. Zwei Compiler-Switches /std:c11 und /std:c17wurden hinzugefügt, um die Konformität mit den neuesten ISO C-Standards zu gewährleisten.

C11 und C17 Funktionalitäten unterstützt werden, wie beispielsweise _Pragma, restrictund Static_assert. IntelliSense kann mit diesen Funktionen arbeiten, indem eine .cDateierweiterung für Quelldateien oder der /TCCompiler-Schalter verwendet wird, um die Syntaxhervorhebung für C-Code zu aktivieren. Die IntelliSense-Hervorhebung ist derzeit jedoch nur für Schlüsselwörter verfügbar, nicht für Makros, die durch Standardheader eingeführt wurden. Eine zukünftige Version wird dies beheben.

Mit dem tokenbasierten konformen Präprozessor implizieren die beiden neuen C-Compiler-Switches / Zc: Präprozessor. Entwickler, die den traditionellen zeichenbasierten Präprozessor neben C11 oder C17 verwenden möchten, müssen den /Zc:preprocessor-Compiler-Switch übergeben.

Microsoft hat C17 als Bugfix-Version von ISO C beschrieben. Die einzigen Unterschiede zwischen den Versionen C11 und C17 sind das STDC_versionMakro _ in C17. Während Visual Studio keine Unterstützung für optionale C11-Funktionen bietet, plant Microsoft, in zukünftigen Versionen die wirkungsvollsten optionalen Funktionen hinzuzufügen. Atomic- und Threading-Unterstützung stehen auf der Produkt-Roadmap. 

Um C11 und C17 in Programmen verwenden zu können, müssen Entwickler über die neuesten Insider Preview Windows SDK-Updates verfügen, um mit dem entsprechenden Präprozessor und der neuen Universal C-Laufzeit arbeiten zu können. Entwickler können ein kostenloses Microsoft-Konto (//signup.live.com) erstellen und sich dann für das Insider-Programm anmelden. Microsoft hat eine Reihe von Anweisungen für den Einstieg in C11 und C17 veröffentlicht.

Visual Studio 2019 16.8 Preview 3 bietet außerdem eine verbesserte Unterstützung für C ++ 20 für Compiler, Standardbibliothek und IDE. Module, Konzepte, Coroutinen und einige Bereiche können im selben Projekt verwendet werden.