日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

c11标准的c语言编译器,官宣:MSVC新加入C11和C17标准

發(fā)布時(shí)間:2023/12/20 c/c++ 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c11标准的c语言编译器,官宣:MSVC新加入C11和C17标准 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

官宣

我們很高興的宣布,從Visual Studio 2019 v16.8 Preview 3開(kāi)始,C11和C17這兩個(gè)C語(yǔ)言版本將加入到MSVC編譯器工具集(toolset)。

多年以來(lái),Visual Studio僅僅是因?yàn)镃++的需要才對(duì)C進(jìn)行有限度的支持。現(xiàn)在,事情有轉(zhuǎn)變了:我們?cè)诰幾g器中添加了一個(gè)基于token的規(guī)范化預(yù)處理器,借助于兩項(xiàng)新加入的編譯器開(kāi)關(guān):/std:c11和/std:c17,我們終于可以正式宣布Visual Studio可以支持最新版本的C語(yǔ)言標(biāo)準(zhǔn)了。

具體都有些什么東西?

所有C11和C17中的特性都將得到支持。這意味著我們會(huì)添加如下的功能:

> _Pragma

> restrict

> _Noreturn 和

> _Alignas, _Alignof 和

> _Generic 和 support

> _Static_assert

IntelliSense組件將和這些特性無(wú)縫集成,你只需要將你的源代碼文件命名為.c結(jié)尾,或者使用編譯器開(kāi)關(guān)/TC來(lái)啟用語(yǔ)法高亮顯示,如下圖所示:

目前IntelliSense僅支持關(guān)鍵字的高亮顯示,還不能處理標(biāo)準(zhǔn)頭文件中的宏,這個(gè)問(wèn)題將在后面的版本中修復(fù)。

因?yàn)镃17本質(zhì)上只是對(duì)ISO C的一個(gè)Bug修復(fù),另外還增加了大量的缺陷報(bào)告處理。

我們對(duì)C11的支持已經(jīng)包含了這些相關(guān)的缺陷處理,除了__STDC_VERSION__這個(gè)宏的定義有所不同以外,我們對(duì)C11和C17的支持基本沒(méi)有什么不同。在C11中,__STDC_VERSION__被定義為201112L,C17中它被定義為201710L。

下面是一個(gè)簡(jiǎn)單的例子,它演示了上面所提到的一些功能特性:

因?yàn)橐肓嘶赥oken的規(guī)范化預(yù)處理器,上面提到的兩個(gè)C編譯器開(kāi)關(guān)都隱式包含/Zc:preprocessor選項(xiàng)。如果你還是想使用傳統(tǒng)的,基于字符的預(yù)處理器,你可以使用/Zc:preprocessor-這個(gè)開(kāi)關(guān)來(lái)回到舊的模式。但是我們鼓勵(lì)你能盡可能的修改代碼,使之不再依賴舊的工作模式。

尚未支持的特性

當(dāng)前不支持任何C11中的可選特性,但是我們還是會(huì)在將來(lái)的某個(gè)版本中提供那些影響力比較大的可選特性。在我們的路線圖中,原子性(Atomic)和線程(Threading)已經(jīng)提上日程。當(dāng)前還不支持復(fù)數(shù)(Complex numbers),但是可以通過(guò)一些合適的測(cè)試宏來(lái)進(jìn)行模擬。你可以告訴我們你想要哪些功能,這樣我們就可以給它們排上優(yōu)先級(jí)。

由于Windows堆的一些特性,aligned_alloc還不支持,作為替代的,可以使用_aligned_malloc。

另外,對(duì)于realloc的DR 400支持在當(dāng)前版本中也尚未實(shí)現(xiàn),因?yàn)檫@個(gè)可能會(huì)破壞ABI。

可變長(zhǎng)數(shù)組

VLA(Variable Length Arrays,可變長(zhǎng)數(shù)組)是C11中的一個(gè)可選特性,細(xì)心的讀者可能也注意到了:VLA也是不支持的。從性能上來(lái)說(shuō),VLA沒(méi)有定長(zhǎng)數(shù)組好,同時(shí)當(dāng)啟用了安全檢查時(shí),VLA也不如malloc()。同時(shí)VLA還為潛在的攻擊者提供了”Shifting the stack”漏洞利用機(jī)會(huì)和其他的一些安全隱患。基于這些原因,我們決定還是暫不支持VLA特性。

C11 和 C17 入門(mén)

為了在程序中使用C11或者C17,你可能需要安裝最新版本的Windows SDK,SDK中包含了所需要的預(yù)處理器(/Zc:preprocessor)和新的通用C運(yùn)行時(shí)庫(kù)。

一般來(lái)說(shuō),Windows SDK和Windows系統(tǒng)一起發(fā)布,因?yàn)檎桨娴腤indows還沒(méi)有包含這些新特性,所以你需要下載預(yù)覽版的Windows SDK(用于提供給Windows Insider的Windows SDK預(yù)覽版本)。

請(qǐng)注意,當(dāng)安裝了預(yù)覽版SDK后,在Visual Studio中配置了使用最新版Windows SDK的工程都會(huì)使用安裝好的預(yù)覽版SDK。

步驟1: 預(yù)覽版SDK入口

下圖是預(yù)覽版SDK下載入口:

步驟2: 下載預(yù)覽版SDK

步驟3:安裝預(yù)覽版SDK

步驟4: 在Visual Studio v16.8 Preview 3中配置C11或者C17工作模式

首先打開(kāi)工程屬性,然后確保工程使用的SDK為預(yù)覽版SDK。如下圖所示,將Windows SDK版本設(shè)置為10.0.20206.0(或者設(shè)置最新安裝版本)

在C Language Standard中,根據(jù)項(xiàng)目需要,可以將它設(shè)置為C11或者C17。

為了確保代碼使用C11或者C17編譯,請(qǐng)將源文件命名為以.c結(jié)尾,或者設(shè)置編譯以下編譯選項(xiàng):

恭喜恭喜:經(jīng)過(guò)以上這些步驟之后,你就可以體驗(yàn)C11和C17啦。

最后

Microsoft Visual C++團(tuán)隊(duì)的博客是我非常喜歡的博客之一,里面有很多關(guān)于Visual C++的知識(shí)和最新開(kāi)發(fā)進(jìn)展。大浪淘沙,如果你對(duì)Visual C++這門(mén)古老的技術(shù)還是那么感興趣,則可以經(jīng)常去他們那(或者我這)逛逛。

本文來(lái)自:《C11 and C17 Standard Support Arriving in MSVC》

總結(jié)

以上是生活随笔為你收集整理的c11标准的c语言编译器,官宣:MSVC新加入C11和C17标准的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国精品一区二区 | 日本jizz在线观看 | 国产精品毛片在线 | 久久男人的天堂 | 牛牛影视av | 久久国产精品波多野结衣 | 久久久久久9999 | 全部免费毛片在线播放高潮 | 日韩久久免费视频 | 中文字幕不卡一区 | 天天躁夜夜操 | 国产资源网站 | 天堂а√在线最新版中文在线 | av动漫免费看 | a天堂中文网 | 一区二区三区国产视频 | 国产精品视频久久久 | 毛片aaa | 无码人妻丰满熟妇区bbbbxxxx | 日批国产| 污污视频网站在线免费观看 | 91亚洲网| 中国免费看的片 | 久操视频精品 | 无码视频一区二区三区 | 国产97色在线 | 伊人青青久久 | 不卡日本 | 亚洲精品一二三四区 | 97综合| 伊人久久一区二区三区 | 91av在线播放 | 青娱乐极品视频在线 | 全黄性高潮 | 亚洲大尺度在线 | 日日草视频 | 黄色av电影在线 | 国产福利av| 一区三区视频在线观看 | 96在线观看 | 欧美xxxx18| 色婷婷久久五月综合成人 | 国产精品久久久久久久免费观看 | 亚洲日本免费 | 久久精品这里有 | 日本中文字幕在线观看视频 | 一本色道久久88综合日韩精品 | 五月婷婷激情综合 | 肥臀av| 熟女高潮一区二区三区 | 国产夫妻在线观看 | 户外露出一区二区三区 | 青青草视频免费播放 | 亚洲国产美女视频 | 欧美成人午夜精品久久久 | 国产免费无码一区二区 | 亚洲狠狠爱 | 成人片在线视频 | 97在线观看免费视频 | 色久视频| 一区二区三区亚洲视频 | 亚洲AV无码精品黑人黑人 | 久久国内 | 日韩中文在线播放 | 日韩少妇毛片 | 精品久久蜜桃 | 国内9l自拍 | 黄色一级生活片 | 欧美乱视频 | 亚洲五月婷婷 | 高清在线一区 | 熟妇熟女乱妇乱女网站 | 国产少女免费观看高清 | 国产视频你懂得 | 黄色资源网站 | 黄频在线看 | 日韩成人在线网站 | 亚洲一区二区三区四区av | 日韩一级伦理片 | 久久久午夜影院 | 丰满圆润老女人hd | 欧美日韩免费在线视频 | 男人的天堂国产 | 久91| 久操精品| 都市激情校园春色亚洲 | 日韩在线播放av | 91视频看 | 国产精品福利视频 | 日本不卡视频一区二区 | 色av色 | 亚洲免费av电影 | 久久精品无码专区 | 四虎最新网址在线观看 | 在线观视频免费观看 | 欧美日韩另类在线 | 91成人品| 都市激情自拍 | 有码一区二区 |