C標(biāo)準(zhǔn)的內(nèi)容有很多,我有許多都沒(méi)有了解過(guò),不過(guò)基本的一些東西,相信大家都知道。周末了,摘取網(wǎng)上一些知識(shí)分享給大家。先看看C各版本基本信息:
C語(yǔ)言起源
C 語(yǔ)言最早的原型是 ALGOL 60 1963 年,劍橋大學(xué)將其發(fā)展成為CPL(Combined Programing Language)。 1967 年,劍橋大學(xué)的 Matin Richards 對(duì) CPL 語(yǔ)言進(jìn)行了簡(jiǎn)化,產(chǎn)生了 BCPL 語(yǔ)言。 1970 年,美國(guó)貝爾實(shí)驗(yàn)室(Bell Labs)的 Ken Thompson 將 BCPL 進(jìn)行了修改,并取名叫做 B 語(yǔ)言,意思是提取 CPL 的精華(Boiling CPL down to its basic good features)。并用 B 語(yǔ)言寫了第一個(gè) UNIX 系統(tǒng)。 1973 年,AT&T 貝爾實(shí)驗(yàn)室的 Dennis Ritchie(D.M.RITCHIE) 在 BCPL 和 B 語(yǔ)言的基礎(chǔ)上設(shè)計(jì)出了一種新的語(yǔ)言,取 BCPL 中的第二個(gè)字母為名,這就是大名鼎鼎的 C 語(yǔ)言。隨后不久,UNIX 的內(nèi)核(Kernel) 和應(yīng)用程序全部用 C 語(yǔ)言改寫,從此,C 語(yǔ)言成為 UNIX 環(huán)境下使用最廣泛的主流編程語(yǔ)言。
K&R C
1978 年,Dennis Ritchie 和 Brian Kernighan 合作推出了《The C Programming Language》的第一版(按照慣例,經(jīng)典著作一定有簡(jiǎn)稱,該著作簡(jiǎn)稱為 K&R),書末的參考指南 (Reference Manual) 一節(jié)給出了當(dāng)時(shí) C 語(yǔ)言的完整定義,成為那時(shí) C 語(yǔ)言事實(shí)上的標(biāo)準(zhǔn),人們稱之為 K&R C。從這一年以后,C 語(yǔ)言被移植到了各種機(jī)型上,并受到了廣泛的支持,使 C 語(yǔ)言在當(dāng)時(shí)的軟件開(kāi)發(fā)中幾乎一統(tǒng)天下。
C89 (ANSI C)
隨著C語(yǔ)言在多個(gè)領(lǐng)域的推廣、應(yīng)用,一些新的特性不斷被各種編譯器實(shí)現(xiàn)并添加進(jìn)來(lái)。于是,建立一個(gè)新的“無(wú)歧義、于具體平臺(tái)無(wú)關(guān)的 C 語(yǔ)言定義” 成為越來(lái)越重要的事情。1983 年,ASC X3(ANSI 屬下專門負(fù)責(zé)信息技術(shù)標(biāo)準(zhǔn)化的機(jī)構(gòu),現(xiàn)已改名為 INCITS)成立了一個(gè)專門的技術(shù)委員會(huì) J11(J11 是委員會(huì)編號(hào),全稱是 X3J11),負(fù)責(zé)起草關(guān)于 C 語(yǔ)言的標(biāo)準(zhǔn)草案。1989 年,草案被 ANSI 正式通過(guò)成為美國(guó)國(guó)家標(biāo)準(zhǔn),被稱為C89 標(biāo)準(zhǔn)。
C90 (ISO C)
隨后, 《The C Programming Language》第二版開(kāi)始出版發(fā)行,書中內(nèi)容根據(jù) ANSI C(C89)進(jìn)行了更新。1990 年,在 ISO/IEC JTC1/SC22/WG14 (ISO/IEC 聯(lián)合技術(shù)第 I 委員會(huì)第 22 分委員會(huì)第 14 工作組) 的努力下,ISO 批準(zhǔn)了 ANSI C 成為國(guó)際標(biāo)準(zhǔn)。于是 ISO C(又稱為 C90) 誕生了。除了標(biāo)準(zhǔn)文檔在印刷編排上的某些細(xì)節(jié)不同外,ISO C(C90) 和 ANSI C(C89) 在技術(shù)上完全一樣。
C95
之后,ISO 在 1994、1996 年 分別出版了 C90 的技術(shù)勘誤文檔,更正了一些印刷錯(cuò)誤,并在1995 年通過(guò)了一份 C90 的技術(shù)補(bǔ)充,對(duì) C90 進(jìn)行了微小的擴(kuò)充,經(jīng)過(guò)擴(kuò)充后的 ISO C 被稱為 C95。
C99
1999 年,ANSI 和 ISO 又通過(guò)了最新版本的 C 語(yǔ)言標(biāo)準(zhǔn)和技術(shù)勘誤文檔,該標(biāo)準(zhǔn)被稱為 C99 。這基本上是目前關(guān)于 C 語(yǔ)言的最新、最權(quán)威的定義了。
現(xiàn)在,各種 C 編譯器都提供了 C89(C90) 的完整支持,對(duì) C99 還只提供了部分支持,還有一部分提供了對(duì)某些 K&R C 風(fēng)格的支持。
目前主要的C語(yǔ)言規(guī)范有c89(c90), c95(94)和c99。C89是最早的C語(yǔ)言規(guī)范,于89年提出,90年先由美國(guó)國(guó)家標(biāo)準(zhǔn)局推出ANSI版本,后來(lái)被接納為ISO國(guó)際標(biāo)準(zhǔn) (ISO/IEC 9899:1990),因而有時(shí)也稱為c90。但在94和96年分別對(duì)c90進(jìn)行了兩次錯(cuò)誤修正,gcc支持的是修正后的c89(90)版本的C語(yǔ)言規(guī) 范。在95年提出過(guò)對(duì)90版規(guī)范的修訂案,稱為 C95或者AMD1。gcc也支持c95規(guī)范。最新的一次C規(guī)范修訂在99年制定(ISO/IEC 9899:1999),即常稱的C99規(guī)范。在2001年對(duì)C99的錯(cuò)誤進(jìn)行了修正,gcc支持的修正后的c99規(guī)范,但是到目前為止,gcc還沒(méi)有完成對(duì)c99規(guī)范的完全支持。
-
UNIX操作系統(tǒng)
+關(guān)注
關(guān)注
0文章
13瀏覽量
15288 -
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7581瀏覽量
135650
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論