《C++程式設計教程(第3版)》——第1章,第2節從C到C++

華章計算機發表於2017-05-02

本節書摘來自華章出版社《C++程式設計教程(第3版)》一書中的第1章,第1.2節從C到C++,作者張志航,更多章節內容可以訪問雲棲社群“華章計算機”公眾號檢視

1.2 從C到C++
C語言是美國貝爾實驗室的Dennis Ritchie在B語言的基礎上開發出來的,1972年在計算機DEC PDP-11上實現了最初的C語言。當時設計C語言是為了編寫UNIX作業系統,UNIX作業系統90%的程式碼由C語言編寫,10%的程式碼由組合語言編寫。隨著UNIX作業系統的廣泛使用,C語言也被人們認識和接受。
C語言在各種計算機上的快速推廣導致出現了許多C語言版本。這些版本雖然是類似的,但通常不相容。顯然人們需要一個與開發平臺和機器無關的標準的C語言版本。1989年美國國家標準協會(American National Standard Institute,ANSI)制定了C語言的標準(ANSI C)。Brian Kernighan和Dennis Ritchie編著的《The C Programming Language》(1988年)介紹了ANSI C的全部內容,該書被稱為C語言的聖經(C Bible)。
C語言具有如下特點:1)語言簡潔、緊湊,使用方便、靈活。C語言只有32個關鍵字,程式書寫形式自由。2)具有豐富的運算子和資料型別。3)可以直接訪問記憶體地址、進行位操作,完成類似於組合語言的操作,能夠勝任開發系統軟體的工作。因此,有時C語言也被稱為“中級語言”,其意義是它既具有高階語言的特點,又具有低階語言的硬體直接操作特性。4)目的碼質量高,程式執行效率高。5)可移植性好,即可以很容易地將程式改寫後執行在不同的計算機系統中。
但是,C語言也有如下侷限性:1)資料型別檢查機制較弱,這使得程式中的一些錯誤不能在編譯時被發現;2)語言本身幾乎沒有支援程式碼重用的機制,因此,一個程式設計者精心設計的程式很難被其他程式所使用;3)當程式達到一定規模時,程式設計者很難控制程式的複雜性。
1980年貝爾實驗室的Bjarne Stroustrup博士及其同事對C語言進行改進和擴充。最初的成果稱為“帶類的C”,而後稱為“新C”。1983年由Rick Mascitti提議正式命名為C++(C Plus Plus)。在C語言中,運算子“++”的意義是對變數進行增值運算,因此C++的喻義是對C語言進行“增值”,擴充內容。1994年制定了ANSI C++草案。以後又經過不斷完善,形成了目前的C++,C++仍然在不斷地發展。


相關文章