C语言作为编程语言,其诞生已经很早,但是在编程语言多样化的今天,C仍然高居TIOBE编程语言排行榜的第一位(2014年5月),而C++语言排位第四。而位居第二位的Java本身就是脱胎于C++语言,第三位的Objective-C是C语言的超集,或者可以看作是C++语言的变种。目前C语言仍然活跃在操作系统编程、驱动开发,甚至是手机开发库,如iOS开发,Android NDK等各个方面。同时,由于C语言更加趋近于底层,因此在使用方面具有更大的灵活性(同时也更容易出错),能够帮助程序员更好的理解系统的内部机制。
了解并掌握C语言,能够给你更广阔的视野,同时帮助你更好的了解你的程序。
《详解C语言编程》课程内容:
第1课 入门介绍,第一个C语言程序
能够编译并运行简单的C语言程序,了解C的优势和劣势,掌握C的基本变量的类型以及声明。明确学习目的。
第2课 C程序基本结构
掌握C的控制台输入输出函数,能够写简单的程序,从控制台输入获取数据信息并输出至控制台。
第3课 C语言程序的流程控制
掌握C的控制流程,能够写包含条件判断、循环等内容的较为复杂的C程序。
第4课 结构(struct)与union
掌握C的复杂结构,并了解其使用方式。到这节课,你能够开始自己写比较复杂的C语言的程序,例如淬火算法、蚁群算法等等。
第5课 指针与数组
基本掌握C的指针的用法,了解指针与数组的关系和区别。
理解C的内存管理方式,避免程序的内存泄露或因不当使用指针等引起的内存相关的错误。让你的程序更高效,更强大。
第6课 C的输入输出
不仅仅是界面的输入输出,还能够保存程序的状态,下一次启动后加载状态。
掌握C的输入输出,包括文件的输入输出以及使用管道或IO重定向时的C语言输入输出的注意事项。
第7课 ADT-抽象数据类型
程序 = 数据结构 + 算法,你真的会写程序吗?数据结构是怎样影响你的程序的?
了解抽象数据类型,清楚基本的抽象数据类型及其在程序中可能的用途。
掌握时间复杂度对程序的性能的影响,明白不同的数据结构有不同的适用范围。
第8课 C的链表
深入了解C的数据结构第一讲
深入了解指针的用法,通过深入剖析单链表及双向链表的结构、操作的实现
加深对指针以及通过指针实现C的数据结构的基本方式。
第9课 树与算法
深入了解C的数据结构第二讲
通过对树的指针实现进一步了解指针在C语言中的使用,掌握C的数据结构实现手段,了解树的结构及其用途。掌握先深、先广两种不同的遍历方式。
第10课 宏与C的标准库
宏让你的生活更简单更高效,标准库,让你不再去发明轮子。
掌握C语言的宏定义及其使用,了解C的标准库提供的基本功能。
第11课 C程序的单元测试以及库
程序纠错贯穿了程序员的一生,那么,让这个始终纠结在“我哪里错了”和“我哪里能做的更好”的人生更简单一些,让单元测试来帮助你。
掌握C语言单元测试的方式,理解C语言静态库以及动态库的区别及不同使用方式。能够在以后的编程活动中使用单元测试。
第12课 ZeroMQ的C网络编程
学会写独立应用程序了?那么把它网络化,不就是一个小型的分布式系统?Hadoop的实质,不是这样么?
通过对ZeroMQ库的学习,了解C语言网络编程的基本知识。掌握通过ZeroMQ实现的问答相应以及广播两种网络通讯方式。通过对ZeroMQ源代码的解读
基本了解C语言网络编程。
授课时间:
开课时间2014年10月25日,课程持续时间大约为14周。