Skip to content

C语言学习路线

C语言大概率是计算机专业与非计算机专业同学接触的第一门编程语言。

C语言能做什么?

很多初学者会感到困惑,C 语言既然工作岗位不多,为什么还要学习呢?学习 C语言能做什么?如果这两个问题搞不清楚的话,学习的过程中就容易脱靶。

C语言是由贝尔实验室的 Dennis Ritchie 在 1969 年~ 1973 年间发明创造的。

Dennis Ritchie是这样评价自己的亲儿子的:“古怪的、有缺陷的,但同时也是一个巨大的成功。”这句评语还是非常中肯的。

第一,C语言在计算机领域起到了承上启下的作用。

img.png

C语言非常的简洁,几乎没有任何冗余。上手难度几乎为 0,除了指针难以被新手掌握以外,其他的基础语法都很容易上手。很多编程语言都受到了C语言的影响,比如说 Java、C++、C#、Python、Go 等等,那学会了 C语言,再学习其他的编程语言就会丝滑得多。

另外,大部分 Unix 内核,以及所有支撑工具和函数库都是用 C语言来编写的。以至于后来几乎所有的操作系统内核都用到了C语言,比如说 Windows、Linux、macOS 等等。那学会了 C语言,就可以学习计算机组成原理、操作系统等等偏基础的计算机基础知识。

第二,C语言可以用于嵌入式系统的开发

除了用于计算机操作系统的编写,C语言现在主要用于嵌入式系统的开发,汽车、照相机、家用电器等设备的底层系统都是用 C 语言编写的。

C语言能够直接操作硬件、管理内存、跟操作系统交互,这使得它成为了一种非常接近底层的编程语言,非常适合有极高性能要求的程序。

C语言核心知识点汇总

这里汇总一下 C语言的核心知识点。先来看文字版的:

  • 数据类型
  • 运算符和表达式
  • 输入和输出
  • 流程控制
  • 函数
  • 数组
  • 指针
  • 结构体
  • 文件操作
  • 内存管理

再来看详细版的思维导图: img.png

C语言有两个关键部分:

第一是语法:也是入门教材里最看重的内容,也就是那些变量、数据类型、分支判断、循环、函数、指针等等。

第二是函数库:简单来说,函数库就是别人编写好的 C 函数,你可以直接拿来调用,比如说调用 printf() 函数就可以在屏幕上打印。很多人可能觉得库函数不重要,都是别人封装好的,只要记住函数名就可以了,但其实我想表达的是,库函数才是你学习 C语言并将其应用于实践的关键。

因为学会调用别人的库函数(例如malloc函数、calloc函数、realloc函数、free函数),才有机会写出自己的库函数,否则从零开始撸实在是太不现实了。

学习C语言的更多资源