Microsoft Visual Studio מגביר את התמיכה בשפת C

Visual Studio IDE של מיקרוסופט הוסיף תמיכה בתקני השפה 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-במתג המהדר.

מיקרוסופט תיארה את C17 כשחרור תיקון באגים של ISO C. ההבדלים היחידים בין גרסאות C11 ו- C17 הם STDC_versionהמאקרו _ ב- C17. Visual Studio אמנם אינו מציע תמיכה בתכונות אופציונליות של C11, אך מיקרוסופט מתכננת להוסיף את התכונות האופציונליות המשפיעות ביותר במהדורות עתידיות. תמיכה אטומית והשחלה נמצאת במפת הדרכים של המוצר. 

כדי להשתמש ב- C11 ו- C17 בתוכניות, על המפתחים להחזיק את עדכוני התצוגה המקדימה של Windows SDK לפני Insider כדי לעבוד עם מעבד הקדם התואם וזמן הריצה Universal Universal החדש. מפתחים יכולים ליצור חשבון מיקרוסופט בחינם (//signup.live.com) ואז להצטרף לתוכנית Insider. מיקרוסופט פרסמה סט הוראות להתחלה עם C11 ו- C17.

Visual Studio 2019 16.8 Preview 3 מציע גם תמיכה משופרת ב- C ++ 20 ברחבי המהדר, הספרייה הסטנדרטית ו- IDE. ניתן להשתמש במודולים, מושגים, קורוטינים וכמה טווחים באותו פרויקט.