正文

第一堂課 初識C語言(2)

學通C語言的24堂課 作者:劉彬彬


1.1 C語言發(fā)展史

1.1.1 程序語言簡述

在講解C語言的發(fā)展歷程之前,先來了解程序語言的發(fā)展歷程。程序語言的發(fā)展一共經(jīng)歷了如下3個階段。

機器語言

機器語言是低級語言,也稱為二進制代碼語言。計算機使用的是由0和1組成的二進制數(shù),組成的一串指令來表達計算機的語言。機器語言的特點是,計算機可以直接識別,不需要進行任何的翻譯。

匯編語言

匯編語言是面向機器的程序設(shè)計語言。用英文字母或者符號串來替代機器語言的二進制碼,就把不易理解和使用的機器語言變成匯編語言。使用匯編語言比機器語言方便閱讀和理解程序。

高級語言

由于匯編語言依賴于硬件體系,并且匯編語言中的助記符號數(shù)量比較多。為了使程序語言能更貼近人類的自然語言,同時又不依賴于計算機硬件,于是,產(chǎn)生了高級語言。這種語言的語法形式類似于英文,并且因為遠離對硬件的直接操作,使得普通人易于理解與使用。其中影響較大、使用普遍的有FORTRAN、ALGOL、BASIC、COBOL、LISP、Pascal、PROLOG、C、C++、VC、VB、Delphi和Java等。

1.1.2 C語言歷史

從程序語言的發(fā)展過程可以看出,以前的操作系統(tǒng)等系統(tǒng)軟件主要是用匯編語言編寫的,但是由于匯編語言依賴于計算機硬件,程序的可讀性和可移植性都不是很好,所以為了提高可讀性和可移植,人們開始尋找一種語言,這種語言應該既具有高級語言的特性,又不失低級語言的好處。于是,在這種需求下產(chǎn)生了C語言。

C語言是由UNIX的研制者丹尼斯·里奇(Dennis Ritchie)和肯·湯普遜(Ken Thompson)于1970年在研制出的BCPL語言(簡稱B語言)的基礎(chǔ)上發(fā)展和完善起來的。19世紀70年代初期,AT&T Bell實驗室的程序員Dennis Ritchie第一次把B語言改為C語言。

最初,C語言運行于AT&T的多用戶、多任務的UNIX操作系統(tǒng)上。后來,Ritchie用C語言改寫了UNIX C的編譯程序,UNIX操作系統(tǒng)的開發(fā)者Ken Thompson又用C語言成功地改寫了UNIX,從此開創(chuàng)了編程史上的新篇章。UNIX成為第一個不是用匯編語言編寫的主流操作系統(tǒng)。

1983年,美國國家標準委員會(ANSI)對C語言進行了標準化,于1983年頒布了第一個C語言草案(83ANSI C),后來于1987年又頒布了另一個C語言標準草案(87ANSI C),最新的C語言標準C99在1999年頒布,并在2000年3月被ANSI采用。但是由于未得到主流編譯器廠家的支持,C99也并未得到廣泛使用。

C語言發(fā)展于大型商業(yè)機構(gòu)和學術(shù)界的研究實驗室,當開發(fā)者們?yōu)榈谝慌_個人計算機提供C編譯系統(tǒng)之后,C語言就得以廣泛傳播,為大多數(shù)程序員所接受。對MS-DOS操作系統(tǒng)來說,系統(tǒng)軟件和實用程序都是用C語言編寫的。Windows操作系統(tǒng)大部分也是用C語言編寫的。

C語言是一種面向過程的語言,同時具有高級語言和匯編語言的優(yōu)點,它可以廣泛應用于不同的操作系統(tǒng),如UNIX、MS-DOS、Microsoft Windows及Linux等。

在C語言的基礎(chǔ)上發(fā)展起來的有支持多種程序設(shè)計風格的C++語言、網(wǎng)絡上廣泛使用的Java、JavaScript、微軟的C#語言等,學好C語言,再學習其他語言時就會很輕松。

說明:目前最流行的C語言有Microsoft C(MS C)、Borland Turbo C(Turbo C)、AT&T C。

1.2 C語言的特點

C語言是一種通用的程序設(shè)計語言,主要用來進行系統(tǒng)程序設(shè)計,具有很多特點,下面分別進行介紹。

高效性

談到高效性,不得不說C語言是“魚與熊掌”兼得。從C語言的發(fā)展歷史也可以看出,它繼承了低級語言的優(yōu)點,產(chǎn)生了高效的代碼,并具有友好的可讀性和編寫性。一般情況下,C語言生成的目標代碼運行效率比匯編程序低10%~20%。

靈活性

C語言中的語法不拘一格,在原有語法基礎(chǔ)上進行創(chuàng)造、復合,給程序員更多的想象和發(fā)揮的空間。

功能豐富

除了C語言所具有的類型外,還可以使用豐富的運算符和自定義的結(jié)構(gòu)類型,來表達任何復雜的數(shù)據(jù)類型,很好地完成所需要的功能。

表達力強

C語言的語法形式與人們所使用的語言形式相似,書寫形式自由、結(jié)構(gòu)規(guī)范,并且其中的簡單控制語句可以輕松地控制程序流程,完成復雜繁瑣的程序要求。

移植性好

因為C語言具有良好的移植性,這使得C程序在不同的操作系統(tǒng)下,只需要簡單地修改或者不用修改就可以進行跨平臺的程序開發(fā)操作。

由于這些特點,C語言備受程序員的青睞。


上一章目錄下一章

Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號