1. 程式人生 > >C語言發展歷史,C語言特點,C語言利於弊,入門須知三招

C語言發展歷史,C語言特點,C語言利於弊,入門須知三招

C語言是面向過程的,而C++是面向物件的

這些是C/C++能做的

伺服器開發工程師、人工智慧、雲端計算工程師、資訊保安(黑客反黑客)、大資料 、資料平臺、嵌入式工程師、流媒體伺服器、資料控解、影象處理、音訊視訊開發工程師、遊戲伺服器、分散式系統、遊戲輔助等

C語言的發展歷史:

20世紀70年代初,貝爾實驗室的Dennis Richie 等人在B語言基礎上開發出C語言,最初是作為UNIX的開發語言;

20世紀70年代末,隨著微型計算機的發展,C語言開始移植到非UNIX環境中,並逐步成為獨立的程式設計語言;

在1978年,Kernighan和裡奇的《C程式設計語言》第一版出版,在這本書中,C語言通常被表述成“K&R C”;

1988年ANSI(美國國家標準協會)對C語言進行了標準化,產生了“ANSI C”;

在ANSI標準化自己的過程中,一些新的特徵被加了進去。ANSI也標準了函式庫。ANSI C標準被ISO(國際標準化組織)採納成為ISO 9899。ISO的第一個版本檔案在1990年出版,誕生了“ISO C”;

標準在90年代才經歷了改進,這就是ISO9899:1999(1999年出版)。這個版本就是通常提及的C99。它被ANSI於2000年三月採用。

C語言的特點:

小編推薦一個學C語言/C++的學習裙【815393895 】,無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!裙內有開發工具,很多幹貨和技術資料分享!

C是中級語言。它把高階語言的基本結構和語句與低階語言的實用性結合起來。C 語言可以像組合語言一樣對位、位元組和地址進行操作, 而這三者是計算機最基本的工作單元;

C是結構式語言。結構式語言的顯著特點是程式碼及資料的分割化,即程式的各個部分除了必要的資訊交流外彼此獨立。這種結構化方式可使程式層次清晰,便於使用、維護以及除錯。C 語言是以函式形式提供給使用者的,這些函式可方便的呼叫,並具有多種迴圈、條件語句控制程式流向,從而使程式完全結構化;

C語言功能齊全。具有各種各樣的資料型別,並引入了指標概念,可使程式效率更高。

C語言具有繪圖能力強,可移植性,並具備很強的資料處理能力,因此適於編寫系統軟體、三維、二維圖形和動畫,支援多種顯示器和驅動器;

C語言適用範圍大。適合於多種作業系統,如Windows、DOS、UNIX等等;也適用於多種機型。

C語言的優點:

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

有豐富的運算子、資料型別和表示式,對程式設計有良好的適應性;

支援以函式為基礎結構化程式設計、多檔案構成及檔案獨立編譯,適合大型複雜程式設計;

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

程式碼及可執行程式的可移植性好。

C語言的缺點:

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

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

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

C語言的語法限制不太嚴格,對變數的型別約束不嚴格,影響程式的安全性,對陣列下標越界不作檢查等。從應用的角度,C語言比其他高階語言較難掌握;

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

型別檢查機制相對較弱、缺少支援程式碼重用的語言結構。