C语言学习的碎碎念
When learning C, what am I learning?
Don’t read only, use it
当初学C语言的时候,最为重要的是用。
一开始很多代码的真正意思,初学是不懂的,但至少要熟悉,怎么熟悉?写
无论是照着别人的代码抄,还是自己尝试重构复现,都算是写,这个过程能让你去思考,就算想不出所以然,也可以在这个过程中锻炼打字速度(笑)
How to run it?
I Don’t give a fuck, just run it in a way whatever you like
这个随你,因为每个人的基础和需求不同。
下面用我自己的亲身经历来现身说法:
Case 0:高中纯小白的我
照着教程下载VS,结果被庞大笨重的IDE留下的阴影,转去用VSCode学了点python
Case 1:刚上大学的我,只接触过Windows下的VSC+python
那时的我用的就是Windows下的VSCode + MinGW,实话讲,用来练习语法足够了
(足够应付学校难度较低且水到要死的C语言课程,
真的只教语法,其他什么的一点也没讲,C语言的灵魂指针也一点没讲)
Case 2:看了一个学期的《C Prime Plus》并且学的还行,然后开始用Linux的我
在花了近半个月熟悉Linux的基本操作,并且熟悉C语法的基础上,用Bash的vim + gcc + gdb写C语言和编译调试。
相比起在Windows照着教程还可能出错的体验,Ubuntu下输入
1 | sudo apt-get install gcc vim |
然后就能开写的体验真的很爽(前提时忽略像婴儿学步一样痛苦的Linux系统的学习过程)
还有Makefile这些高端操作,只能说C语言的最佳的学习体验必须要在Linux下才能获得
what to learn?
铺垫了这么多,终于开始点题了:学习C语言到底是在学什么?
从底层上来讲:
- 编程思维
(一开始计算机被发明出来的用途) - 工程思维
(尤其时以后面对别人留下的屎上) - 系统思维
(优雅的”包装“概念) - 全面的思考方式
(在测试和debug的时候尤为重要)
从计算机这门学科上来讲:
- 计算机的构造(你直接要操纵硬件,特别是内存)
- 计算机的运行原理
- 操作系统(Windows和Linux都很大一部分都是C语言写的)
如果把计算机的世界比作魔法世界,那么C语言就是对魔力最细微、最基础、最具体的使用,一切诸如操作系统、计算机网络、数据库、图形学等等高级法术,追根溯源都是C语言。
换言之,学习C语言,才是开始从0学习计算机
一些推荐
yue!傻逼二次元!滚啊!

- Title: C语言学习的碎碎念
- Author: Coladuck
- Created at : 2024-09-08 16:28:19
- Updated at : 2024-09-08 22:15:35
- Link: https://blog.coladuck.top/2024/09/08/C-笔记-1/
- License: This work is licensed under CC BY-NC-SA 4.0.