前不久分享了關于C語言的文章:C語言依然位居榜單前列,依然值得程序員學習。 一直覺得C語言是“神”一樣的編程語言,這么多年可以穩穩的排在前列(當然,能排上名,自然有它的道理)。 一、前言之前,《現代C》的作者Jens Gustedt透露,C委員會現已開始構建下一個C標準的真正修訂版,被稱為“C2x”。其中“x”應該代表新標準出現的年份數字,預計將于 2022 年完成的 C2x 標準。 同時,Gustedt還透露:我們會定期發布工作草案,其中包括目前已添加的更改。除了C17這是一個純粹的bug修復版本,這樣的工作文件引入了規范性的變化并且是公開的。 其中,整理了一些草案:
其中,提到其目的是促進可移植性、可靠性、可維護性等。 草案具體內容,可以參看Gustedt的博客:
https://gustedt.wordpress.com/2018/11/12/c2x
二、即將推出的C2x主要目標是什么?
Gustedt回答:
新 C 標準的制定主要是為了完善一些目標。
關鍵點是這個標準旨在描述現有的實踐,而不是發明本身。只要有可能,發明應該在現有的 C 編譯器中進行,或者來自其他編程語言(事實上主要是 C++)。
也就是說,還有很多工作將清理現有的特性,追求語義上的模糊性,并添加可能有助于日常編碼的小特性。
三、語言方面的變化有哪些是值得我們期待的?
Gustedt回答:
在語言和庫級別,程序員直接可見的部分目前還沒有太多定論。我的期望是我們將看到一些集成到 C 中的 C++ 特性,例如屬性、以某種形式編譯所有數據類型的時間常量,以及初始化類型(也就是 C++ 的 auto feature)。
此外,還有一個 C++ 的協調計劃,用于新的調用約定,它可以取代我們從一開始就一直在使用的錯誤碼返回約定。
但是 C 標準還有另一個重要的作用,因為它基本上為我們的計算機架構和其他編程語言構建設置了機器模型。C 標準將其稱為“抽象狀態機”。作為一個重要的特性,我們已經投票將最新的 IEEE 浮點規范集成到 C 標準中。
我們還組建了一個工作組來修改“內存模型”,事關程序員可能會或者可能不會直接與計算機內存中數據裸表示交互、這可能將如何影響一些可能的優化以及這種字節和位的調整將如何變得安全可靠。
這項工作遵循的是 Peter Sewell(等人)關于“指針來源”的論文,我們希望我們最終得到的內存模型可以廣泛適用于 C 系統軟件和應用程序的多樣性。
四、C 特別擅長的用途和應用領域?Gustedt回答:C 最大的優點是效率、可移植性和穩定性。只要這些是軟件開發當中存在的主要問題,那么 C 就應該被視為首選語言。 本文參考:
https://www.infoq.cn/article/lG_76LvIfjol2V3lUHl5
參考Gustedt的博客:
https://gustedt.wordpress.com/2018/11/12/c2x
可以看得出來,C語言還在大力發展,附上一張2019年8月,最新 TIOBE 編程語言排行榜(C語言僅次于JAVA):
-
C語言
+關注
關注
180文章
7614瀏覽量
137249 -
ISO
+關注
關注
0文章
262瀏覽量
39623 -
C2xx
+關注
關注
0文章
2瀏覽量
6547
發布評論請先 登錄
相關推薦
評論