C語言特點
①C是中級語言。它把高級語言的基本結構和語句與低級語言的實用性結合起來
②C 語言可以像匯編語言一樣對位、字節和地址進行操作, 而這三者是計算機最基本的工作單元;C語言功能齊全。具有各種各樣的數據類型,并引入了指針概念,可使程序效率更高。
③C是結構式語言。結構式語言的顯著特點是代碼及數據的分割化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序層次清晰,便于使用、維護以及調試。C 語言是以函數形式提供給用戶的,這些函數可方便的調用,并具有多種循環、條件語句控制程序流向,從而使程序完全結構化;
④C語言具有繪圖能力強,可移植性,并具備很強的數據處理能力,因此適于編寫系統軟件、三維、二維圖形和動畫,支持多種顯示器和驅動器;
⑤C語言適用范圍大。適合于多種操作系統,如Windows、DOS、UNIX等等;也適用于多種機型。
C語言利與弊
C語言利:
既有高級語言的結構和編程環境,又有類似于低級語言(如匯編語言)的系統資源操縱能力。目標代碼的執行效率只比匯編低10~20% ,比其他高級語言高,適合解決有實時要求的問題;有豐富的運算符、數據類型和表達式,對程序設計有良好的適應性;支持以函數為基礎結構化程序設計、多文件構成及文件獨立編譯,適合大型復雜程序設計;語言簡潔、緊湊,使用方便、靈活,書寫形式自~由;代碼及可執行程序的可移植性好。
C語言弊:
C語言它的最大的缺點就是,如果你的項目很復雜,大量的開發人員互相之間需要更新大段代碼時,C語言可能會使事情變得異常麻煩。因為C是在面向對象方法流行之前開發的,這大大降低了C語言復雜設計的可能性。(不要以為C語言做不了大項目 - -世界上有太多的經典都是用C語言完成的,如果你想了解C語言的能力,不妨看看QUAKE3的源代碼——很敬佩ID的無私,這份代碼完全是公開的,任何人都可以使用它與修改它。);輸入輸出相對很多語言都較為復雜。對于字符串的處理,只能通過字符數組實現。繪圖操作較為復雜;C語言的缺點主要表現在數據的封裝性上,這一點使得C在數據的安全性上有很大缺陷,這也是C和C++的一大區別;C語言的語法限制不太嚴格,對變量的類型約束不嚴格,影響程序的安全性,對數組下標越界不作檢查等。從應用的角度,C語言比其他高級語言較難掌握;
指針是C語言的一大特色,可以說是C語言優于其,可以說是C語言優于其它高級語言的一個重要原因。就是因為它有指針,可以直接進行靠近硬件的操作,但是C的指針操作也給它帶來了很多不安全的因素。C++在這方面做了很好的改進,在保留了指針操作的同時又增強了安全性。Java取消了指針操作,提高了安全性;類型檢查機制相對較弱、缺少支持代碼重用的語言結構。