Microsoft Visual Studio засилва поддръжката на език C

Visual Studio IDE на Microsoft добави поддръжка за езиковите стандарти C11 и C17 C, като по този начин разшири предишната ограничена поддръжка на IDE за C. C11 и C17 станат поддържани езикови версии, започвайки с Visual Studio 2019 16.8 Preview 3, който беше пуснат на 14 септември

От години Visual Studio има ограничена поддръжка на C до необходимото за езика C ++, който е изграден като разширение на C. Сега към компилатора е добавен съответен, базиран на токен препроцесор. Два компилаторни превключвателя /std:c11 и /std:c17бяха добавени, за да осигурят съответствие с най-новите стандарти ISO C.

C11 и C17 функции се поддържат като _Pragma, restrictи Static_assert. IntelliSense може да работи с тези функции, като използва .cфайлово разширение за изходни файлове или /TCпревключвателя на компилатора, за да активира подчертаването на синтаксиса за C код. Понастоящем подчертаването IntelliSense е достъпно само за ключови думи, а не за макроси, въведени от стандартни заглавки. Бъдеща версия ще поправи това.

С включването на базирания на символи препроцесор за съответствие, двата нови превключвателя на компилатора C означават / Zc: препроцесор. Разработчиците, които искат да използват традиционния символен препроцесор заедно с C11 или C17, ще трябва да преминат в /Zc:preprocessor-превключвателя на компилатора.

Microsoft описа C17 като версия за отстраняване на грешки на ISO C. Единствените разлики между версиите C11 и C17 са _ STDC_versionмакросът в C17. Докато Visual Studio не предлага поддръжка за опционални функции C11, Microsoft планира да добави най-въздействащите незадължителни функции в бъдещи версии. Атомната и резбовата поддръжка са на пътната карта на продукта. 

За да използват C11 и C17 в програмите, разработчиците трябва да имат най-новите актуализации на Insider Preview Windows SDK, за да работят с съответния препроцесор и новото изпълнение на Universal C. Разработчиците могат да създадат безплатен акаунт в Microsoft (//signup.live.com) и след това да се включат в програмата Insider. Microsoft публикува набор от инструкции за започване на работа с C11 и C17.

Visual Studio 2019 16.8 Preview 3 също предлага подобрена поддръжка за C ++ 20 в компилатора, стандартната библиотека и IDE. Модули, концепции, съпрограми и някои диапазони могат да се използват в един и същ проект.