学习C语言无非是为了能够编写一些程序,那么学到什么程度才算是学到了基础,入门了呢?此次学习的目标有三个,首先能够独立编写一些复杂的C语言程序,然后必须理解计算机语言编译机制,最后的目标同样是作为一个软件工程师必备的技能——能够阅读复杂的 Linux 平台的 C 语言工程代码。以下是对这三个目标的一个简单拓展介绍。
1、能独立编写复杂的C语言程序
编写C语言程序是一个C语言软件工程师的最基本的能力,而课本上的小练习并不能真正地体现一个学习者的学习程度,那么这个时候就需要一个新的挑战来检验自己的实际操作能力和对C语言的掌握程度。如果能够独立完成一个较为复杂的C程序,那么说明你已经踏上了C语言编程的新道路了,对C语言有了一定的掌握了。
这个时候就出现了一个问题——什么样的C语言程序才算是复杂呢?在C语言的学习过程中,C程序的复杂度考量可以从代码量和业务逻辑这两个方面入手。
代码量方面,如果能够做到从接受到任务开始,一天左右的时间能够完成一个代码量在500行左右的模块,那么基本就可以了。
业务方面,如果能够完成较为复杂的业务逻辑,那么说明已经完成了这个目标。比如,在Linux平台下发现自己的电脑某个USB接口驱动没有了,那么能够独立完成这个驱动的编写就说明你很不错了(当然,驱动的基本知识得有一定的了解),或者能够依靠一些芯片的使用手册等对一些电路板的程序进行编写(比如智能小车,GUI绘制等)也是可以的。课外相关内容要求比较少的业务也不少,比如制作一个计算器等。
2、理解计算机语言编译机制
这个主要要求对整个工程的转化为可执行程序的过程有一定的理解。实际编辑过程中常用的编程工具有很多,大多都是IDE,这些软件在使用过程中能够实现一键编译,那么此次学习要求能够对IDE在点击了它的编译按键之后,工程从源代码变成可执行程序的过程中到底经历了什么,这样的话能够更好地理解编程这项工作。
3、阅读复杂的Linux平台的C语言工程代码
这个可以看做是