為什么要使用C語言?
發(fā)布時間:2023-06-16 16:05:08
為什么要使用C語言?
C是一種融合了控制特性的現(xiàn)代語言,而我們已發(fā)現(xiàn)在計算機科學(xué)的理論和實踐中,控制特性是很重要的。其設(shè)計使得用戶可以自然地采用自頂向下的規(guī)劃,結(jié)構(gòu)化的編程,以及模塊化的設(shè)計。這種做法使得編寫出的程序更可靠,更易懂。
高效性
C是一種高效的語言。 在設(shè)計上它充分利用了當(dāng)前計算機在能力上的優(yōu)點。C程序往往很緊湊且運行速度快。事實上,C可以表現(xiàn)出通常只有匯編語言才具有的精細控制能力(匯編語言是特定的CPU設(shè)計所采用的一組內(nèi)部指令的助記符。不同的CPU類型使用不同的匯編語言)。如果愿意,你可以細調(diào)程序以獲得最大速度或最大內(nèi)存使用率。
可移植性
C是一種可移植語言。這意味著,在一個系統(tǒng)上編寫的C程序經(jīng)過很少改動或不經(jīng)修改就可以其他系統(tǒng)上運行。如果修改是必要的,則通常只須改變伴隨主程序的一個頭文件中的幾項內(nèi)容即可。多數(shù)語言原本都想具有可移植性,但任何曾將IBM PC BASIC 程序轉(zhuǎn)換為 Apple BASIC 程序(它們還是近親)的人,或者試圖在 UNIX 系統(tǒng)上運行一個 IBM 大型機 FORTRAN 程序的人都知道,移植至少是在制造麻煩。C 在可移植性方面處于領(lǐng)先地位。C 編譯器(將C代碼轉(zhuǎn)換為計算機內(nèi)部使用的指令的程序)在大約40多種系統(tǒng)上可用,包括從使用8位微處理器的計算機到Cray超級計算機。不過要知道,程序中為訪問特定硬件設(shè)備(例如顯示器)或操作系統(tǒng)(如Windows XP或OS X)的特殊功能而專門編寫的部分,通常是不能移植的。
由于C與UNIX的緊密聯(lián)系,UNIX系統(tǒng)通常都帶有一個C編譯器作為程序包的一部分。Linux中同樣也包括一個C編譯器。個人計算機,包括運行不同版本的 Windows 和 Macintosh 的PC,可使用若干種C編譯器。所以不論你使用的是家用計算機,專業(yè)工作站還是大型機,都很容易得到針對你特定系統(tǒng)的C編譯器。
強大的功能和靈活性
C強大而又靈活(計算機世界中經(jīng)常使用的兩個詞)。例如,強大而靈活的 UNIX操作系統(tǒng)的大部分便是用C編寫的。其他語言(如 FORTRAN,Perl,Python,Pascal,LISP,Logo和BASIC)的許多編譯器和解釋器也都用C編寫的。結(jié)果是,當(dāng)你在一臺UNIX機器上使用FORTRAN時,最終是由一個C程序負責(zé)生成最后的可執(zhí)行程序的。C程序已經(jīng)用于解決物理學(xué)和工程學(xué)問題,甚至用來為《角斗士》這樣的電影制造特殊效果。
面向編程人員
C面向編程人員的需要。它允許你訪問硬件,并可以操縱內(nèi)存中的特定位。它具有豐富的運算符供選擇,讓你能夠簡潔地表達自己的意圖。在限制你所能做的事情方面,C 不如Pascal這樣的語言嚴格。這種靈活性是優(yōu)點,同時也是一種危險。優(yōu)點在于:許多任務(wù)(如轉(zhuǎn)換數(shù)據(jù)形式)在C中都簡單得多。危險在于:使用C時,你可能會犯在使用其他一些語言時不可能犯的錯誤。C給予你更多的自由,但同時也讓你承擔(dān)更大的風(fēng)險。
另外,多數(shù)C實現(xiàn)都有一個大型的庫,其中包含有用的C函數(shù)。這些函數(shù)能夠處理編程人員通常會面對的許多需求。
C語言的未來
20世紀(jì)80年代初,C 在 UNIX系統(tǒng)的小型機世界中已經(jīng)是主導(dǎo)語言了,從那時開始,它已經(jīng)擴展到個人計算機(微型機)和大型機(龐然大物), 許多軟件開發(fā)商都首選 C 語言來開發(fā)其子處理程序,電子表格軟件,編譯器和其他產(chǎn)品。這些公司知道,C 可以產(chǎn)生緊湊而高效的程序。更重要的是,他們知道這些程序易于修改而且易于適應(yīng)新的計算機模式。
對于公司和熟悉 C 語言的人有益的東西,對其他用戶同樣有益。越來越多的計算機用戶已轉(zhuǎn)身使用 C 以便利用其優(yōu)點。不一定非得是計算機專業(yè)人員才能使用 C
不管 C++ 和 Java 還是其他較新的語言如何流行,C 在軟件產(chǎn)業(yè)中仍然是一種重要的技能,在最想獲得的技能中,它一般都列在前10名。C語言也一直位列主流編程語言的前三甲!特別是在嵌入式系統(tǒng)的編程中,C 一直占據(jù)主導(dǎo)地位。也就是說,在為汽車,照相機,DVD等其他現(xiàn)代化設(shè)備中逐漸普及的微處理器編程。同樣,C 已開始進入長期以來一直屬于 FORTRAN 的科學(xué)編程領(lǐng)域。
最后,由于它是一種適合用來開發(fā)操作系統(tǒng)的語言,C 在windows以及 Linux的開發(fā)中也扮演著重要的角色。因此,在未來幾十年當(dāng)中,C語言也將繼續(xù)強勢!
無論未來如何,C不僅僅是人類和計算機溝通的一種編程語言,更多的代表了一種思想、一種哲學(xué)!