在C语言中有很多的使用技巧,大部分继承于linux内核开发的一些技巧,但是以目前的水平达不到内核代码的水准,但是并不妨碍,在工程里使用一些在linux内核里比较有意思的一些写法。
linux内核,是C语言的最佳成果,所以学习内核是C语言程序员的基础,换句话说,在牛掰的项目,你都无法跨越linux内核,C语言的语法简单,但是注重逻辑分析,难理解,
所以对C语言学的好坏,就是对内核理解的程度,所以在校的学生党,不要过了计算机2级,就满足了,那只能说明你的基础打的还可以,你离C的道路还差的很多,C语言 基础部分的 指针,进阶部分的 内存管理 ,最终部分,内核学习,我的目标是从事linux内核的开发和维护
你说算法重要吗,重要,但是那是科学家的事儿,不是程序员的事儿,程序员需要做的是,软硬件的实现就好了,我们需要做的实现,灵活使用已知的算法,做到写的程序,是自己已知的最好的算法,不要花大精力去创新算法,因为我们的精力是真的有限的,尤其作为C程序员,需要自己创造大量的轮子,可以查找到的资源太少了,不像高级语言,放眼所及之处都是已经,写好的【车轮子“对象”】, 所以我们更注重逻辑,和自己造轮子,不要羡慕,因为各有各的好
没有所谓的鄙视链,所以没必要打趣,我刚开始学的时候,觉得老子的C天下无敌,很骄傲,但是真正了解之后,其实是程序语言的进化路上的必然,不存在鄙视链,因为大家都是逻辑的产物,只有实际的逻辑 if 和 else,所以现在我是鄙视以前的我那可笑的想法的
不过,C和C++ 真的更容易掉头发
接下来我会对C原因实际开发的知识点大概总结(linux)
TODO:
1.linux hash算法的使用总结
2.C语言对象编程的实现
3.C语言不得不掌握的几种算法
4.C语言的线程调配的方法
5.C语言网络通信服务架构的实现
6.C语言linux系统编程经常使用的函数的总结