C语言学了能干嘛?
做游戏开发有必要学习C语言吗?
C语言学了有什么用?
我经常会听到这种声音,里面不乏计算机专业的学生。
以我个人的经验来说,C语言是非常有必要学习的。
很多人学习C语言只是为了学习算法,或者单纯是用来做数学题......
C语言的用处很多,不是只能做驱动或者嵌入式。
比如计算机图形学,不一定非要使用C++。
而且早期计算机图形学,基本上都是C。后来才慢慢转到C++,但是C的图形库也有很多。

我当时买的这本书,应该是国内最早引进的图形学教材,现在估计绝版了吧……
比如,我就用C语言实现过计算机图形学的功能。
这是我自己用C语言封装的库。
以前我还写过一个检测C#内存泄漏的小工具。
C语言还可以做系统。
现在的操作系统基本上都是C写的,比如Unix。
感兴趣的同学,可以看看如何实现系统之类的书籍。
Unix小一点的版本只有几万行代码,但是已经是一个相对完整的操作系统了,像内存管理、线程管理、内存调度、系统时钟划分等,你完全可以自己试着实现一个,真的是非常美妙的体验。
C语言可以做的事情很多,缺点就是什么都需要自己写。
像内存管理、线程管理、消息管理.....
我认为C语言入门的水平,其实是链表。
数组不算入门,链表的各种操作熟悉才算是入门,链式数组、链式栈、双向链表等。
C语言的中级水平,应该可以用C实现图和树这种高级一点的数据结构,同时也能自己做一些库。
高级水平的话,可以用C构建大型系统了,并且能够根据经验去优化改进。