返回信息流楼主非计算机相关专业,距大一和大二学习C语言已有六年之久,马上要参加工作,领导说要学习一下C语言,所以想这段时间自己重温学习一下,但是很迷茫,不知道各路大神有没有推荐的书籍以及视频推荐一下,谢谢各位了!
这是一条镜像帖。来源:北邮人论坛 / cpp / #102988同步于 2024/7/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
C语言学习建议
Flowerk
2024/7/23镜像同步11 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
基本写法可以跟着 MIT 6.087 Practical Programming in C 和 MIT 6.S096
Introduction to C and C++ 写点小玩具迅速重新上手一下,搜索引擎可以搜到它们前些
年开课的公开 lecture notes、实验和作业。
太感谢啦
【 在 fa555 的大作中提到: 】
: 基本写法可以跟着 MIT 6.087 Practical Programming in C 和 MIT 6.S096
: Introduction to C and C++ 写点小玩具迅速重新上手一下,搜索引擎可以搜到它们前些
: 年开课的公开 lecture notes、实验和作业。
: ............
学习C语言,最快的是(https://www.runoob.com/cprogramming/c-tutorial.html)
不过,如果要写点东西,需要结合具体做的内容,重点把一些知识捡起来。
如果是嵌入式,计算机原理、linux相关的一些操作、编译相关的一些知识。
刷题的话,runoob足够了,4个小时,基本都能捡起来
从我个人的经验来说,我感觉C的语法是所有语言里,最正统,最四平八稳的。甚至一个手都能数的过来。还是看楼主要用到什么地步。
学会怎么,申明定义变量,什么是指针,什么是数组。怎么定义声明初始化结构体。怎么申明定义调用函数。条件分支语句的写法,for while switch的写法。基本上语法层面的东西就这些了。
然后c语言永远(90%以上吧)都是和底层打交道的。那么其实是找一套工具链来熟悉。具体的就是学会读man的文档。想写一个网络程序,就man socket。读写文件就man read write。时间,定时器 man clock。io复用就man epoll。这方面我感觉找本unix编程的教材读一下。
再往下,实际上有很多c的库可以学习。比如libevent,malloc库什么的。或者nginx的源代码。
再然后就是故障定位的能力。读一读csapp吧,学会读几种风格的汇编。学会用gdb学会用objdump,学会用readelf。学会用编译工具链gcc的各种参数,知道怎么编译,链接程序,nm啥的看符号。知道找不到头文件,找不到符号的时候啥的时候怎么办。
如果这些都学会了,剩下的就是具体工作方面的知识了,看你搞啥了,网络,linux,嵌入式啥的。
但是一个忠告是,会了这些,依然找不到一份很好的工作。我已经从大厂辞职回老家躺平了。