關(guān)于C語(yǔ)言的介紹
C語(yǔ)言是在一種稱(chēng)為B語(yǔ)言的基礎(chǔ)上,克服了B語(yǔ)言依賴(lài)于機(jī)器又無(wú)數(shù)據(jù)類(lèi)型等局限性開(kāi)發(fā)的語(yǔ)言。以下是關(guān)于C語(yǔ)言的由來(lái)、C語(yǔ)言的發(fā)展、C語(yǔ)言的應(yīng)用、C語(yǔ)言的特點(diǎn)等方面知識(shí),歡迎閱讀學(xué)習(xí)!
c語(yǔ)言的由來(lái)
c語(yǔ)言誕生干19?2年,由美國(guó)電話電報(bào)公司(AT&T)貝爾實(shí)驗(yàn)室的D. M. Ritchie設(shè)計(jì),
并首先在一臺(tái)使用UNIX操作系統(tǒng)>的DEC PDP-11計(jì)算機(jī)上實(shí)現(xiàn)。
C語(yǔ)言是在一種稱(chēng)為B語(yǔ)言的基礎(chǔ)上,克服了B語(yǔ)言依賴(lài)于機(jī)器又無(wú)數(shù)據(jù)類(lèi)型等局限性開(kāi)發(fā)的語(yǔ)言。在1970年,美國(guó)貝爾實(shí)驗(yàn)室的IC. Thompson以BCPL語(yǔ)言為基礎(chǔ),設(shè)計(jì)出一種既簡(jiǎn)單又接近于硬件的B語(yǔ)言,并用它寫(xiě)成了第一個(gè)UNIX操作系統(tǒng),在PDP-7計(jì)算機(jī)上實(shí)現(xiàn)的。B語(yǔ)言是取了BCPL語(yǔ)言的第一個(gè)字母。而B(niǎo)CPL語(yǔ)言(Basic Combined ProgrammingLanguage)是3.967年英國(guó)劍橋大學(xué)的M. Richard,基于一種CPL語(yǔ)言(combined Program-wing Language)提出的一種改進(jìn)的語(yǔ)言。而CPL語(yǔ)言又是于1963年英國(guó)劍橋大學(xué)根據(jù)AL-GOL 8。推出的'一種接近硬件的語(yǔ)言。由此可見(jiàn),G語(yǔ)言的根源可以追溯到ALGOL 60,它的演變過(guò)程如下所示:
ALGOL6o(1960年)與CPL(1963年)一BCPL(1967年)iB<3970年)-->C(1972年)
C語(yǔ)言的發(fā)展
C語(yǔ)言是在人們?cè)O(shè)想尋找一種既具有一般高級(jí)語(yǔ)言的特征,又具有低級(jí)語(yǔ)言特點(diǎn)的語(yǔ)言
的情況下應(yīng)運(yùn)而生的,它具有人們的這種期望,集中了高級(jí)語(yǔ)言和低級(jí)語(yǔ)言的優(yōu)點(diǎn)。最初的C語(yǔ)言就是為了描述和實(shí)現(xiàn)UNIX操作系統(tǒng)而產(chǎn)生的一種工具語(yǔ)言。1973年,貝爾實(shí)驗(yàn)室的KThampson和D. M. Ri}chie兩人合作使用C語(yǔ)言修改了UNIX操作系統(tǒng),即uNZx第5版本。原來(lái)的UNIX操作系統(tǒng)是用匯編語(yǔ)言寫(xiě)的,改寫(xiě)后UNIX操作系統(tǒng)中90%以上使用了C語(yǔ)言。從此,C語(yǔ)言的命運(yùn)與UNIX操作系統(tǒng)便有著密切的聯(lián)系,隨著UNIX操作系統(tǒng)的.發(fā)展和推廣,C語(yǔ)言也在被廣泛的使用和發(fā)展。
C語(yǔ)言出世以后。在應(yīng)用中不斷的改進(jìn)。在1975年UN1X第6版本公布以后,C語(yǔ)言開(kāi)始引起人們的注意,它的優(yōu)點(diǎn)逐步被人們所認(rèn)識(shí)。1977年出現(xiàn)了與具體機(jī)器無(wú)關(guān)的C語(yǔ)言編譯文本,推動(dòng)了UNIX操作系統(tǒng)在各種機(jī)器上的迅速地實(shí)現(xiàn)。隨著UNIX的日益廣泛的使用,C語(yǔ)言也得到了迅速的推廣。1978年以后,C語(yǔ)言先后被移植到大、中、小和微型機(jī)上,它很快成為世界上應(yīng)用最廣泛的計(jì)算機(jī)語(yǔ)言之一。
1978年又推出UNIX第8版本,以該版本中的C編譯程序?yàn)榛A(chǔ),B. W. Ketnigha。和D. M. Ritchie合作(被稱(chēng)為K&R)出版}}The C Programming Language}(C程序設(shè)計(jì)語(yǔ)言)一書(shū),被稱(chēng)為標(biāo)準(zhǔn)C 1983年,ANSI(美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì))對(duì)G語(yǔ)言的各種版本進(jìn)行了擴(kuò)充,推出了新的標(biāo)準(zhǔn),被稱(chēng)為ANSI . 它比原來(lái)的標(biāo)準(zhǔn)C有了改進(jìn)和擴(kuò)充。1987年,ANSI又公布了87ANSZC新版本。目前流行的各種c語(yǔ)言編譯系統(tǒng)的版本大多數(shù)都以此為基礎(chǔ),但各有其不同。當(dāng)前微機(jī)上使用的C語(yǔ)言編譯系統(tǒng)多為Microsoft C, Turbo C, Borland C和QuickC等,它們略有差異,按標(biāo)準(zhǔn)C書(shū)寫(xiě)的程序,基本上都可運(yùn)行。讀者要了解不同版本的編譯系統(tǒng)的特點(diǎn)和區(qū)別可參閱有關(guān)的操作說(shuō)明書(shū)。
C語(yǔ)言的應(yīng)用
從前面對(duì)C語(yǔ)言的特點(diǎn)的分析中,不難看出C語(yǔ)言具有編程方便、語(yǔ)句簡(jiǎn)練、功能很強(qiáng)、移植性好等優(yōu)點(diǎn),是編程者喜歡使用的一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言。
C語(yǔ)言已被廣泛地應(yīng)用于系統(tǒng)軟件和應(yīng)用軟件的開(kāi)發(fā)中。在下述的幾個(gè)方面應(yīng)用得更廣泛。
1.數(shù)據(jù)庫(kù)管理和應(yīng)用程序方面
C語(yǔ)言的非數(shù)值處理功能很強(qiáng),因此它被廣泛地應(yīng)用于數(shù)據(jù)庫(kù)管理系統(tǒng)和應(yīng)用軟件。大多數(shù)的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),如dBASE,Fox$ASE, ORACLE等,都是由C語(yǔ)言編寫(xiě)的。各種不同部門(mén)的'應(yīng)用軟件也大都是用G語(yǔ)言開(kāi)發(fā)的,C語(yǔ)言在開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用軟件方面應(yīng)用很廣,深受開(kāi)發(fā)者的歡迎。
2.圖形圖像來(lái)統(tǒng)的應(yīng)用程序方面
C語(yǔ)言在圖形圖像的開(kāi)發(fā)中也有著廣泛的市場(chǎng)。很多圖形圖像系統(tǒng),如AutoCAD通用圖形系統(tǒng)等,就是使用C語(yǔ)言開(kāi)發(fā)的,并且在這些圖形系統(tǒng)中可以直接使用C語(yǔ)言編程,實(shí)現(xiàn)某些功能。C語(yǔ)言編譯系統(tǒng)帶有許多繪圖功能的函數(shù),利用這些函數(shù)開(kāi)發(fā)圖形應(yīng)用軟件十分方便。所開(kāi)發(fā)的應(yīng)用程序常用C語(yǔ)言編寫(xiě)接口界面,這樣既方便又靈活,效果很好。這是因?yàn)樵撜Z(yǔ)言提供有圖形處理功能,便于實(shí)現(xiàn)圖形圖像的各種操作。因此,C語(yǔ)言在圖形圖像的應(yīng)用方面很好地發(fā)揮了它的作用。
3.編寫(xiě)與設(shè)備的接。程序方面
C語(yǔ)言不僅在建立友好界面方面有著廣泛應(yīng)用,如下拉式菜單、彈出菜單、多窗口技術(shù)等;而且在編寫(xiě)與設(shè)備的接口程序方面也有著廣泛應(yīng)用。這是因?yàn)镃語(yǔ)言不僅具有高級(jí)語(yǔ)言的特性還具有低級(jí)語(yǔ)言的功能,因此,在編寫(xiě)接口程序方面十分方便,有時(shí)它與匯編語(yǔ)言一起使用,會(huì)顯示出更高的效率。
4.數(shù)據(jù)結(jié)構(gòu)方面
由于C語(yǔ)言提供了十分豐富的數(shù)據(jù)類(lèi)型,不僅有基本數(shù)據(jù)類(lèi)型還有構(gòu)造的數(shù)據(jù)類(lèi)型,如數(shù)組、結(jié)構(gòu)和聯(lián)合等,把它們用于較復(fù)雜的數(shù)據(jù)結(jié)構(gòu)〔例如,鏈表、隊(duì)列、伐、樹(shù)等)中顯得十分方便,這方面已有許多成熟的例程供選擇使用。
5.排序和檢索方面
排序和檢索是數(shù)據(jù)處理中最常遇到并較為復(fù)雜的間題。使用C語(yǔ)言來(lái)編寫(xiě)排序和檢索各種算法的程序既方便又簡(jiǎn)潔。特別是有些排序算法采用了遞歸方法進(jìn)行編程,更顯得清晰明了。因此、人們喜歡使用G語(yǔ)言來(lái)編寫(xiě)這方面的程序。
C語(yǔ)言的特點(diǎn)
c語(yǔ)言是一種開(kāi)發(fā)比較晚的高級(jí)語(yǔ)言,它吸取了早期高級(jí)語(yǔ)言的優(yōu)點(diǎn),克服了某些不足,
形成了它獨(dú)有的特性。c語(yǔ)言的特點(diǎn)概括起來(lái)有如下幾點(diǎn):
1. C語(yǔ)言是一種結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言
結(jié)構(gòu)化程序設(shè)計(jì)的優(yōu)點(diǎn)是便于分工合作,便于調(diào)試、維護(hù)和擴(kuò)充。這種程序設(shè)計(jì)方法是將一個(gè)大程序分成若千個(gè)模塊,每個(gè)模塊完成一個(gè)功能,由一個(gè)總控模塊來(lái)控制和協(xié)調(diào)各個(gè)模塊來(lái)實(shí)現(xiàn)總的功能;因此,這種程序設(shè)計(jì)方法又稱(chēng)為模塊化程序設(shè)計(jì)方法。在C語(yǔ)言中,函數(shù)是構(gòu)成C諳言程序的最小模塊。實(shí)際上,C語(yǔ)言的程序是由一個(gè)或者多個(gè)文件組成的,每個(gè)文件叉是由一個(gè)或多個(gè)函數(shù)組成的。因此,一個(gè)程序是由一個(gè)或多個(gè)函數(shù)組成的,其中,須有且僅有一個(gè)主函數(shù),生函數(shù)的名字規(guī)定為rnain() o這樣,組成一個(gè)程序的者干個(gè)文件中,僅有一個(gè)是主文件,只有主艾件中才含有main ( )函數(shù)。另外,函數(shù)是由若干條語(yǔ)句組成的,語(yǔ)句是由若干個(gè)單詞組成的‘單詞是由若干個(gè)字符組成的'。字符是構(gòu)成程序的最小單元。e語(yǔ)言程序的構(gòu)成如下所示:
程序~文件~函數(shù)~語(yǔ)句~單詞、字符。
C語(yǔ)言是結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,它具有構(gòu)成三種基本結(jié)構(gòu)模式的語(yǔ)句,這種結(jié)構(gòu)化程序設(shè)計(jì)應(yīng)具有的三種基本結(jié)構(gòu)模式如下:
順序結(jié)構(gòu)棋式
它將由若干條順序執(zhí)行的語(yǔ)句構(gòu)成,這是程序設(shè)計(jì)的最基本形式。
分支結(jié)構(gòu)模式
C語(yǔ)言中具有條件語(yǔ)句和開(kāi)關(guān)語(yǔ)句,它將會(huì)構(gòu)成各種需要的分支結(jié)構(gòu)模式。
.循環(huán)結(jié)構(gòu)模式
C語(yǔ)言中提供了三種循環(huán)語(yǔ)句(for循環(huán),whil。循環(huán)和do-while循環(huán)),用它們可以構(gòu)成
各種循環(huán)結(jié)構(gòu)模式。
在講述C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言的同時(shí),還必須指出它與其他結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言(如PASCAL語(yǔ)言)相比較,還有一些不完全之處,因此,C語(yǔ)言是一種不完全的結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言。其表現(xiàn)如下:
第一,完全的結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言不允許使用goto語(yǔ)句,因?yàn)間oto語(yǔ)句會(huì)破壞結(jié)構(gòu)化。
但是。got。語(yǔ)句在某些時(shí)候會(huì)使得程序簡(jiǎn)練,因此,在C語(yǔ)言中原則上允許使用goto語(yǔ)句,為了減少它對(duì)結(jié)構(gòu)化的影響,采取了限制使用的辦法,即規(guī)定got。語(yǔ)句的轉(zhuǎn)向范圍只能在一個(gè)函數(shù)體內(nèi)。不得使用gates語(yǔ)句從一個(gè)函數(shù)體內(nèi)轉(zhuǎn)向到另一個(gè)函數(shù)體中,這種限制性地使用goto語(yǔ)句會(huì)給編程帶來(lái)一些方便,又不會(huì)影響棋塊之間的結(jié)構(gòu)化。但是,建議在G語(yǔ)言的程序中盡量少使用goto語(yǔ)句。
【C語(yǔ)言的介紹】相關(guān)文章:
C語(yǔ)言程序介紹08-23
C語(yǔ)言Turbo C 2.0內(nèi)容介紹07-26
C語(yǔ)言位段的介紹07-25
c語(yǔ)言new的用法介紹08-28
C語(yǔ)言入門(mén)學(xué)習(xí)介紹11-01
c語(yǔ)言數(shù)學(xué)函數(shù)的介紹10-20
2017最新C語(yǔ)言介紹06-21