對於大部分程序員,C語言是學習編程的第一門語言,不多有不瞭解C的程序員。
C語言除了能讓你瞭解編程的相關概念,帶你走進編程的大門,還能讓你明白程序的運行原理,好比,計算機的各個部件是如何交互的,程序在內存中是一種怎樣的狀態,操做系統和用戶程序之間有着怎樣的「愛恨情仇」,這些底層知識決定了你的發展高度,也決定了你的職業生涯。
若是你但願成爲出類拔萃的人才,而不只僅是碼農,這麼這些知識就是不可逾越的。也只有學習C語言,才能更好地瞭解它們。有了足夠的基礎,之後學習其餘語言,會舉一反三,很快上手,7 天瞭解一門新語言不是神話。
C語言概念少,詞彙少,包含了基本的編程元素,後來的不少語言(C++、Java等)都參考了C語言,說C語言是現代編程語言的開山鼻祖絕不誇張,它改變了編程世界。
正是因爲C語言的簡單,對初學者來講,學習成本小,時間短,結合本教程,可以快速掌握編程技術。
在世界編程語言排行榜中,C語言、Java 和 C++ 霸佔了前三名,擁有絕對優點,以下表所示:html
2015年01月榜單 | ||
---|---|---|
排名 | 語言 | 佔有率 |
1 | C | 16.703% |
2 | Java | 15.528% |
3 | Objective-C | 6.953% |
4 | C++ | 6.705% |
5 | C# | 5.045% |
6 | PHP | 3.784% |
7 | JavaScript | 3.274% |
8 | Python | 2.613% |
9 | Perl | 2.256% |
10 | PL/SQL | 2.014% |
2015年06月榜單 | ||
排名 | 語言 | 佔有率 |
1 | Java | 17.822% |
2 | C | 16.788% |
3 | C++ | 7.756% |
4 | C# | 5.056% |
5 | Objective-C | 4.339% |
6 | Python | 3.999% |
7 | Visual Basic .NET | 3.168% |
8 | PHP | 2.868% |
9 | JavaScript | 2.295% |
10 | Delphi/Object Pascal | 1.869% |
2018年01月榜單 | ||
排名 | 語言 | 佔有率 |
1 | Java | 14.215% |
2 | C | 11.037% |
3 | C++ | 5.603% |
4 | Python | 4.678% |
5 | C# | 3.754% |
6 | JavaScript | 3.465% |
7 | Visual Basic .NET | 3.261% |
8 | R | 2.549% |
9 | PHP | 2.532% |
10 | Perl | 2.419% |
2017年,因爲小型軟件設備的蓬勃發展以及汽車行業底層軟件的增長,C語言還拿下了「年度編程語言」的桂冠,成爲 2017 年全球增加最快的編程語言。下表列出了最近 10 年的「年度編程語言」:java
年份 | 優勝者 |
---|---|
2017 | ![]() |
2016 | ![]() |
2015 | ![]() |
2014 | ![]() |
2013 | ![]() |
2012 | ![]() |
2011 | ![]() |
2010 | ![]() |
2009 | ![]() |
2008 | ![]() |
C語言誕生於20世紀70年代,年齡比咱們都要大,咱們將在《C語言的三套標準:C8九、C99和C11》一節中講解更多關於C語言的歷史。
固然,C語言也不是沒有缺點,畢竟是70後老人,有點落後時代,開發效率較低,後來人們又在C語言的基礎上增長了面向對象的機制,造成了一門新的語言,稱爲C++,咱們將在《C語言和C++到底有什麼關係》中講解。python
和 Java、C++、Python、C#、JavaScript 等高級編程語言相比,C語言涉及到的編程概念少,附帶的標準庫小,因此總體比較簡潔,容易學習,很是適合初學者入門。
程序員
編程語言的發展大概經歷瞭如下幾個階段:面試
彙編語言 --> 面向過程編程 --> 面向對象編程算法
C語言出現的時候,已經度過了編程語言的拓荒年代,具有了現代編程語言的特性,可是這個時候尚未出現「軟件危機」,人們沒有動力去開發更加高級的語言,因此也沒有太複雜的編程思想。
也就是說,C語言雖然是現代編程語言,可是它涉及到的概念少,詞彙少,思想也簡單。C語言學習成本小,初學者可以在短期內掌握編程技能,很是適合入門。數據庫
也許是機緣巧合,C語言出現後不久,計算機產業開始爆發,計算機硬件愈來愈小型化,愈來愈便宜,逐漸進入政府機構,進入普通家庭,C語言成了編程的主力軍,得到了史無前例的成功,操做系統、經常使用軟件、硬件驅動、底層組件、核心算法、數據庫、小遊戲等都使用C語言開發。
雷軍說過,站在風口上,豬都能飛起來;C語言就是那頭豬,無論它好很差,反正它飛起來了。
編程
C語言在計算機產業大爆發階段被萬人膜拜,無疑會成爲整個軟件產業的基礎,擁有核心地位。
軟件行業的不少細分學科都是基於C語言的,學習數據結構、算法、操做系統、編譯原理等都離不開C語言,因此大學將C語言做爲一門公共課程,計算機相關專業的同窗都要學習。
C語言被譽爲「上帝語言」,它不但奠基了軟件產業的基礎,還創造了不少其它語言,例如:數據結構
C語言是有史以來最爲重要的編程語言:要進入編程行業高手級別必學C語言,要掙大錢必學C語言,要作黑客、紅客必學C語言,要面試名企、外企、高薪職位必學C語言。編程語言