當前位置:才華齋>計算機>C語言>

C語言的缺點是什麼

C語言 閲讀(2W)

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

C語言的缺點是什麼

  C語言的缺點:

1、C語言它的最大的缺點就是,如果你的項目很複雜,大量的開發人員互相之間需要更新大段代碼時,C語言可能會使事情變得異常麻煩。因為C是在面向對象方法流行之前開發的,這大大降低了C語言複雜設計的可能性。(不要以為C語言做不了大項目--世界上有太多的經典都是用C語言完成的,如果你想了解C語言的能力,不妨看看QUAKE3的源代碼——很敬佩ID的無私,這份代碼完全是公開的,任何人都可以使用它與修改它。);

2、輸入輸出相對很多語言都較為複雜。對於字符串的處理,只能通過字符數組實現。繪圖操作較為複雜;

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

4、C語言的語法限制不太嚴格,對變量的類型約束不嚴格,影響程序的安全性,對數組下標越界不作檢查等。從應用的角度,C語言比其他高級語言較難掌握;

5、指針是C語言的一大特色,可以説是C語言優於其它高級語言的一個重要原因。就是因為它有指針,可以直接進行靠近硬件的操作,但是C的指針操作也給它帶來了很多不安全的因素。C++在這方面做了很好的.改進,在保留了指針操作的同時又增強了安全性。Java取消了指針操作,提高了安全性;

6、類型檢查機制相對較弱、缺少支持代碼重用的語言結構。

  C語言的優點:

1、既有高級語言的結構和編程環境,又有類似於低級語言(如彙編語言)的系統資源操縱能力。目標代碼的執行效率只比彙編低10~20%,比其他高級語言高,適合解決有實時要求的問題;

2、有豐富的運算符、數據類型和表達式,對程序設計有良好的適應性;

3、支持以函數為基礎結構化程序設計、多文件構成及文件獨立編譯,適合大型複雜程序設計;

4、語言簡潔、緊湊,使用方便、靈活,書寫形式自~由;

5、代碼及可執行程序的可移植性好。