Microsoft Visual Studio ulepsza obsługę języka C.

Microsoft Visual Studio IDE dodał obsługę standardów językowych C11 i C17 C, rozszerzając w ten sposób ograniczoną wcześniej obsługę IDE dla C. C11 i C17 stają się obsługiwanymi wersjami językowymi, począwszy od Visual Studio 2019 16.8 Preview 3, który został wydany 14 września.

Visual Studio od lat ogranicza obsługę języka C do tego, co było wymagane dla języka C ++, który został zbudowany jako rozszerzenie języka C. Teraz do kompilatora dodano zgodny preprocesor oparty na tokenach. Dodano dwa przełączniki kompilatora /std:c11 i /std:c17, aby zapewnić zgodność z najnowszymi standardami ISO C.

C11 i C17 są obsługiwane funkcje takie jak _Pragma, restricti Static_assert. Technologia IntelliSense może współpracować z tymi funkcjami przy użyciu .crozszerzenia plików dla plików źródłowych lub /TCprzełącznika kompilatora, aby włączyć wyróżnianie składni dla kodu w języku C. Jednak wyróżnianie IntelliSense jest obecnie dostępne tylko dla słów kluczowych, a nie makr wprowadzonych przez standardowe nagłówki. Przyszłe wydanie to naprawi.

Wraz z włączeniem zgodnego preprocesora opartego na tokenach, dwa nowe przełączniki kompilatora C imply / Zc: preprocessor. Deweloperzy, którzy chcą używać tradycyjnego preprocesora opartego na znakach obok C11 lub C17, będą musieli przekazać /Zc:preprocessor-przełącznik kompilatora.

Microsoft opisał C17 jako wydanie poprawiające błędy ISO C. Jedyne różnice między wersjami C11 i C17 to STDC_versionmakro _ w C17. Chociaż program Visual Studio nie oferuje obsługi opcjonalnych funkcji C11, firma Microsoft planuje dodać najbardziej wpływowe funkcje opcjonalne w przyszłych wersjach. Wsparcie dla atomów i wątków znajduje się na mapie drogowej produktu. 

Aby używać C11 i C17 w programach, programiści muszą mieć najnowsze aktualizacje zestawu SDK Insider Preview dla systemu Windows, aby współpracować z odpowiednim preprocesorem i nowym środowiskiem wykonawczym Universal C. Programiści mogą utworzyć bezpłatne konto Microsoft (//signup.live.com), a następnie wyrazić zgodę na udział w programie Insider. Firma Microsoft opublikowała zestaw instrukcji dotyczących rozpoczynania pracy z C11 i C17.

Visual Studio 2019 16.8 w wersji zapoznawczej 3 oferuje również ulepszoną obsługę języka C ++ 20 w kompilatorze, bibliotece standardowej i środowisku IDE. Moduły, koncepcje, programy i niektóre zakresy mogą być używane w tym samym projekcie.