糯米文學吧

位置:首頁 > 計算機 > C語言

C語言的語言特點

C語言1.37W

C語言是什麼?它有什麼特點?下面yjbys考試網小編將為你帶來C語言的語言特點,更多內容請關注yjbys考試網。

C語言的語言特點

  基本特性

1、高級語言:它是把高級語言的基本結構和語句與低級語言的實用性結合起來的工作單元。

2、結構式語言:結構式語言的顯著特點是代碼及數據的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序層次清晰,便於使用、維護以及調試。C 語言是以函數形式提供給用户的,這些函數可方便的調用,並具有多種循環、條件語句控制程序流向,從而使程序完全結構化。

4、代碼級別的跨平台:由於標準的存在,使得幾乎同樣的C代碼可用於多種操作系統,如Windows、DOS、UNIX等等;也適用於多種機型。C語言對編寫需要進行硬件操作的場合,優於其它高級語言。

5、使用指針:可以直接進行靠近硬件的操作,但是C的指針操作不做保護,也給它帶來了很多不安全的因素。C++在這方面做了改進,在保留了指針操作的同時又增強了安全性,受到了一些用户的支持,但是,由於這些改進增加語言的複雜度,也為另一部分所詬病。Java則吸取了C++的教訓,取消了指針操作,也取消了C++改進中一些備受爭議的地方,在安全性和適合性方面均取得良好的效果,但其本身解釋在虛擬機中運行,運行效率低於C++/C。一般而言,C,C++,java被視為同一系的語言,它們長期佔據着程序使用榜的前三名。

  特有特點

C語言是一個有結構化程序設計、具有變量作用域(variable scope)以及遞歸功能的過程式語言。

C語言傳遞參數均是以值傳遞(pass by value),另外也可以傳遞指針(a pointer passed by value)。

不同的變量類型可以用結構體(struct)組合在一起。

只有32個保留字(reserved keywords),使變量、函數命名有更多彈性。

部份的變量類型可以轉換,例如整型和字符型變量。

通過指針(pointer),C語言可以容易的'對存儲器進行低級控制。

預編譯處理(preprocessor)讓C語言的編譯更具有彈性。

  優點

1、簡潔緊湊、靈活方便

C語言一共只有32個關鍵字,9種控制語句,程序書寫形式自由,區分大小寫。把高級語言的基本結構和語句與低級語言的實用性結合起來。C 語言可以像彙編語言一樣對位、字節和地址進行操作,而這三者是計算機最基本的工作單元。

2、運算符豐富

C語言的運算符包含的範圍很廣泛,共有34種運算符。C語言把括號、賦值、強制類型轉換等都作為運算符處理。從而使C語言的運算類型極其豐富,表達式類型多樣化。靈活使用各種運算符可以實現在其它高級語言中難以實現的運算。

3、數據類型豐富

C語言的數據類型有:整型、實型、字符型、數組類型、指針類型、結構體類型、共用體類型等。能用來實現各種複雜的數據結構的運算。並引入了指針概念,使程序效率更高。

4、表達方式靈活實用

C語言提供多種運算符和表達式值的方法,對問題的表達可通過多種途徑獲得,其程序設計更主動、靈活。它語法限制不太嚴格,程序設計自由度大,如對整型量與字符型數據及邏輯型數據可以通用等。

5、允許直接訪問物理地址,對硬件進行操作

由於C語言允許直接訪問物理地址,可以直接對硬件進行操作,因此它既具有高級語言的功能,又具有低級語言的許多功能,能夠像彙編語言一樣對位(bit)、字節和地址進行操作,而這三者是計算機最基本的工作單元,可用來寫系統軟件。

6、生成目標代碼質量高,程序執行效率高

C語言描述問題比彙編語言迅速,工作量小、可讀性好,易於調試、修改和移植,而代碼質量與彙編語言相當。C語言一般只比彙編程序生成的目標代碼效率低10%~20%。

7、可移植性好

C語言在不同機器上的C編譯程序,86%的代碼是公共的,所以C語言的編譯程序便於移植。在一個環境上用C語言編寫的程序,不改動或稍加改動,就可移植到另一個完全不同的環境中運行。

8、表達力強

C語言有豐富的數據結構和運算符。包含了各種數據結構,如整型、數組類型、指針類型和聯合類型等,用來實現各種數據結構的運算。C語言的運算符有34種,範圍很寬,靈活使用各種運算符可以實現難度極大的運算。

C語言能直接訪問硬件的物理地址,能進行位(bit)操作。兼有高級語言和低級語言的許多優點。

它既可用來編寫系統軟件,又可用來開發應用軟件,已成為一種通用程序設計語言。

另外C語言具有強大的圖形功能,支持多種顯示器和驅動器。且計算功能、邏輯判斷功能強大。

  缺點

1、 C語言的缺點主要表現在數據的封裝性上,這一點使得C在數據的安全性上有很大缺陷,這也是C和C++的一大區別。

2、 C語言的語法限制不太嚴格,對變量的類型約束不嚴格,影響程序的安全性,對數組下標越界不作檢查等。從應用的角度,C語言比其他高級語言較難掌握。也就是説,對用C語言的人,要求對程序設計更熟練一些。

標籤:語言特點 語言