应该找点让自己开心的事情做。
C语言是我进入计算机领域学习的第一门语言。可惜工作这么多年,早已忘的支离破碎,对链表、数据结构乃至系统编程的知识,早已经还给老师了。这对今后的学习是非常不利的。所以计划从今天开始,抽空花30个晚上,每晚花1~2个小时的时间复习C语言,尽量保证连续。
我的复习会比较跳跃,这个系列的文章,也仅适合作为个人的技术笔记,不太适合作为入门资料进行参考。
我可能会在文章中提及一些调试、算法以及工程方面的技术,相信其中有些内容对搜索引擎来说会是一个比较好的长尾关键词,这样也给一些编程过程中遇到问题的朋友一些参考。本着少废话的原则,尽量避免探讨过于简单的技术。否则可能会沦为小白记事本,反而容易误导网友。
暂时给自己拟定了以下复习计划,30个夜晚主要这样安排(后续可能根据实际情况有所调整):
第一夜:编译器、语法关键字、运算符、变量及数据类型
第二夜:函数、作用域、预处理和头文件
第三夜:指针和数组
第四夜:存储类型、结构体、链表
第五夜:C语言标准库、错误处理和调试、输入输出
第六夜:内存管理、读写文件、管道
第七夜:线程、多线程
第八夜:进程、多进程
第九夜:C语言常见的Linux系统调用
第十夜:C语言常见的Windows系统调用
第十一夜:在C语言中使用内联汇编
第十二夜:使用C语言探索堆栈
第十三夜:网络编程1-网络协议及其数据结构
第十四夜:网络编程2-Socket通信
第十五夜:网络编程3-常见的应用层协议
第十六夜:编写一个Linux的服务
第十七夜:编写一个Windows的服务
第十八夜:C语言动态链接与静态链接
第十九夜:编写一个Linux用户态Trojan
第二十夜:编写一个Windows用户态Trojan
第二十一夜:Linux内核编程1-内核源代码分析
第二十二夜:Linux内核编程2-实现一个内核模块
第二十三夜:Linux内核编程3-实现一个块设备驱动
第二十四夜:Linux内核编程4-实现一个字符设备驱动
第二十五夜:Linux内核编程5-实现一个内核Trojan
第二十六夜:Linux内核编程5-在Linux内核中瞎搞
第二十七夜:Windows内核编程1-Windows内核初探
第二十八夜:Windows内核编程2-Windows驱动编程研究
第二十九夜:Windows内核编程3-在Windows内核中瞎搞
第三十夜:学习总结
真是一个宏大的计划,甚至不知道自己能不能完成,有点期待。
希望可以自律、坚持地完成下去。
参考资料: