C 语言究竟是一门怎样的语言?
对于大部分程序员,C 语言是学习编程的第一门语言,很少有不了解 C 的程序员。
C 语言除了能让你了解编程的相关概念,带你走进编程的大门,还能让你明白程序的运行原理,比如,计算机的各个部件是如何交互的,程序在内存中是一种怎样的状态,操作系统和用户程序之间有着怎样的“爱恨情仇”,这些底层知识决定了你的发展高度,也决定了你的职业生涯。
如果你希望成为出类拔萃的人才,而不仅仅是码农,这么这些知识就是不可逾越的。也只有学习 C 语言,才能更好地了解它们。有了足够的基础,以后学习其他语言,会触类旁通,很快上手,7 天了解一门新语言不是神话。
C语言概念少,词汇少,包含了基本的编程元素,后来的很多语言(C++、Java等)都参考了 C 语言,说 C 语言是现代编程语言的开山鼻祖毫不夸张,它改变了编程世界。
正是由于 C 语言的简单,对初学者来说,学习成本小,时间短,结合本教程,能够快速掌握编程技术。
在世界编程语言排行榜中,C 语言、Java 和 C++ 长期霸占着前三名,加上近几年爆火的 Python,四门语言的市场占用率之和接近 50%,拥有绝对优势,如下表所示:
| 2020 年 07 月榜单 | ||
|---|---|---|
| 排名 | 语言 | 占有率 |
| 1 | C | 16.45% |
| 2 | Java | 15.10% |
| 3 | Python | 9.09% |
| 4 | C++ | 6.21% |
| 5 | C# | 5.25% |
| 6 | Visual Basic | 5.23% |
| 7 | JavaScript | 2.48% |
| 8 | R | 2.41% |
| 9 | PHP | 1.90% |
| 10 | Swift | 1.43% |
| 2021 年 07 月榜单 | ||
| 排名 | 语言 | 占有率 |
| 1 | C | 11.62% |
| 2 | Java | 11.17% |
| 3 | Python | 10.95% |
| 4 | C++ | 8.01% |
| 5 | C# | 4.83% |
| 6 | Visual Basic | 4.50% |
| 7 | JavaScript | 2.71% |
| 8 | PHP | 2.58% |
| 9 | 汇编语言 | 2.40% |
| 10 | SQL | 1.53% |
| 2022 年 07 月榜单 | ||
| 排名 | 语言 | 占有率 |
| 1 | Python | 13.44% |
| 2 | C | 13.13% |
| 3 | Java | 11.59% |
| 4 | C++ | 10.00% |
| 5 | C# | 5.65% |
| 6 | Visual Basic | 4.97% |
| 7 | JavaScript | 1.78% |
| 8 | 汇编语言 | 1.65% |
| 9 | SQL | 1.64% |
| 10 | Swift | 1.27% |
| 年份 | 优胜者 |
|---|---|
| 2021 |
Python |
| 2020 |
Python |
| 2019 |
C |
| 2018 |
Python |
| 2017 |
C |
| 2016 |
Go |
| 2015 |
Java |
| 2014 |
JavaScript |
| 2013 |
Transact-SQL |
| 2012 |
Objective-C |
当然,C 语言也不是没有缺点,毕竟是 70 后老人,有点落后时代,开发效率较低,后来人们又在 C 语言的基础上增加了面向对象的机制,形成了一门新的语言,称为 C++,我们将在《C语言和C++到底有什么关系》中讲解。
C语言难吗?
和 Java、C++、Python、C#、JavaScript 等高级编程语言相比,C 语言涉及到的编程概念少,附带的标准库小,所以整体比较简洁,容易学习,非常适合初学者入门。
编程语言的发展大概经历了以下几个阶段:
汇编语言 --> 面向过程编程 --> 面向对象编程
- 汇编语言是编程语言的拓荒年代,它非常底层,直接和计算机硬件打交道,开发效率低,学习成本高;
- C语言是面向过程的编程语言,已经脱离了计算机硬件,可以设计中等规模的程序了;
- Java、C++、Python、C#、PHP 等是面向对象的编程语言,它们在面向过程的基础上又增加了很多概念。
也就是说,C语言虽然是现代编程语言,但是它涉及到的概念少,词汇少,思想也简单。C语言学习成本小,初学者能够在短时间内掌握编程技能,非常适合入门。
C语言是计算机产业的核心语言
也许是机缘巧合,C 语言出现后不久,计算机产业开始爆发,计算机硬件越来越小型化,越来越便宜,逐渐进入政府机构,进入普通家庭,C 语言成了编程的主力军,获得了前所未有的成功,操作系统、常用软件、硬件驱动、底层组件、核心算法、数据库、小游戏等都使用 C 语言开发。雷军说过,站在风口上,猪都能飞起来;C 语言就是那头猪,不管它好不好,反正它飞起来了。

C 语言在计算机产业大爆发阶段被万人膜拜,无疑会成为整个软件产业的基础,拥有核心地位。
软件行业的很多细分学科都是基于 C 语言的,学习数据结构、算法、操作系统、编译原理等都离不开 C 语言,所以大学将 C 语言作为一门公共课程,计算机相关专业的同学都要学习。
C 语言被誉为“上帝语言”,它不但奠定了软件产业的基础,还创造了很多其它语言,例如:
- PHP、Python 等都是用 C 语言开发出来的,虽然平时做项目的时候看不到 C 语言的影子,但是如果想深入学习 PHP 和 Python,那就要有 C 语言基础了。
- C++ 和 Objective-C 干脆在 C 语言的基础上直接进行扩展,增加一些新功能后变成了新的语言,所以学习 C++ 和 Objective-C 之前也要先学习 C 语言。
C 语言是有史以来最为重要的编程语言:要进入编程行业高手级别必学 C 语言,要挣大钱必学 C 语言,要做黑客、红客必学 C 语言,要面试名企、外企、高薪职位必学 C 语言。
Python