对思网 > 杂谈 > 正文

​学不好C语言应该怪谭浩强吗?

2024-11-24 21:51 来源:对思网 点击:

学不好C语言应该怪谭浩强吗?

导读

C语言的诞生是现代程序语言革命的起点。今天,C语言依旧在系统编程、嵌入式编程等领域占据着统治地位。C语言就是丹尼斯·里奇开发的。因此,他被称为c语言之父、UNIX之父。

正文

一些同学学不好C语言,把罪责归于“因为教材是谭浩强写的”实在是很滑稽。

谭浩强老先生 1934 年生,现在已经 80 岁了。他 1958 年从清华大学自动控制系毕业,那年 24 岁。要知道 C 语言那时候都还没诞生,计算机都是大型机,原始又笨重,当时谭浩强学自动化控制这一专业可以说是比较尖端的。光从这一点上,就可以说,他是同时代人里非常非常聪明的那一类人。

现在许多人批评谭浩强的《C 程序设计》的一个重要理由是“不符合C99标准”。但我们要知道 Dennis M. Ritchie 在 1972 年才推出 C 语言的第一个版本(当时谭浩强 38 岁),那时的 C 语言并不成熟。事实上 C 语言的第一次标准化一直到 1989 年才完成(俗称C89),请注意那时候谭浩强已经 55 岁了!

55 岁,你退休了没?

而更重要的是,1989 年那个时候,互联网的发展即使是在全球来看,也是非常非常初级的,更别说国内。因此信息获取的渠道极其狭窄。

列个图标就能明白:

我们现在浏览网页所用的万维网协议,就是在1989 年那一年,由当时在欧洲粒子物理实验室的Tim Berners-Lee和他的同事一起发明的。也就是说,一直到谭浩强 55 岁退休的时候,C 语言才刚刚完成了第一版本的标准化,而整个世界的互联网甚至还不支持通过浏览器来浏览!到了 1999 年的时候,C99 标准终于问世。但因为这一标准比较新,大部分编译器还不能支持其中的许多特性。因此大部分沿用的还是 C89 的特性。在这样的背景下,第二年,谭浩强的《C 程序设计》出版了,而这一年,谭浩强已经 66 岁了。

抛开谭浩强 66 岁依然写作这一点不谈,若是站在当时的背景下来看待,事实上这本书也还是可读,可学,有价值的。但软件行业发展飞快,现在高校若继续沿用这一教材,就不合时宜了。

谭浩强的《C 程序设计》这本教材好不好?现在的观点来看当然不好。现在想学习 C 语言的人,不推荐采用他的书。但这主要是因为软件行业发展快速,他的书籍内容较老导致的,而且确实是存在一些语法错误的。

这是知乎上的部分错误截图

我们可以就书论书,有错误就及时改正,但有些不明就里的同学从书出发指责谭浩强“不懂编程,水平低”等等,就是不对的了。

那么,你现在可能会有一个疑惑,学C语言到底哪些教材最好呢?小谷只能说根据个人逻辑思维能力和水平层次来选择不同的教材,在这里小谷推荐几本比较好的教材(教学PPT,习题,视频,案例非常全面):(仅供参考)

1、《C语言开发入门教程》

2、《C语言程序设计教程》

3、《C++程序设计教程》

关注微信boxuegu,IT干货天天学