C語言發展史(二)


C語言憑藉著吸取其他語言的優點,又新增了許多特性。這使它剛發明出來就被廣泛應用,如果想詳細瞭解C語言的優點和它的發展歷程,可以看我以前釋出的專欄C語言發展史,這裡就不再贅述了。

隨著C語言的用途越來越廣泛,人們逐漸注意到了一個問題:在不同的計算機上,C語言的標準不相同。打個比方,比如你在A計算機上編寫了一個C語言程式,移植到B計算機上發現無法執行,原因在於兩臺計算機遵循的標準不同。在C語言發展的早期,幾乎每種計算機上的C標準都有差別,這嚴重的阻止了C語言的進一步發展。

1.K&R C

為了使C語言更好的發展,1978年布萊恩•柯林漢(Brian Kernighan)和丹尼斯•裡奇(Dennis Ritchie)合著了 The C Programming Language,該書中定義了C語言的標準,每個實現都必須完全遵循這些標準。標準稱為K&R C,取該書作者的姓的第一個字母合併而成。很快,絕大多數編譯器的支援了K&R C

2. C89

1984年,美國國家標準協會(ANSI)成立了C標準委員會,決定根據硬體的發展來制定C語言的標準。1989年,ANSI釋出了第一個官方C語言標準ANSI x3.159.1989,也被簡稱為C89。1990年,國際標準化組織(ISO)也通過了ANSI所制定的標準,被稱為C90也叫ISO C,C90,ANSI C,ISO C是完全相同的概念,指的都是C89標準。

延伸閱讀  【Metaverse讀本第四篇】:萬人同場景線上吃雞需要多少算力?

3.C99

1999年,ISO為了使C語言更好的支援和利用新的計算機硬體,制定了C99標準,全稱為ISO/IEC 9899:1999,ANSI於2000年也通過了這項標準。相對於C89來說,C99增加了新的資料型別,可變陣列,標頭檔案庫等,使C99能夠更好地支援更多的計算機,讓C語言能擴充套件到更多領域中,並逐步代替FOATRAN,BASIC,彙編等語言。

4.C11

2011年12月8日,ISO更新了C語言的特性,編號為ISO/IEC 9899:2011,簡稱C11,這也是迄今為止最新的C語言標準。它提供了靜態斷言,匿名聯合體/結構體,多執行緒支援等 。但由於標準過於新穎,導致部分編譯器現在仍不支援C11標準。

Scroll to Top