Linux下C语言编程课程
Linux下C语言编程课程
课程概述
本课程详细介绍了嵌入式C语言的难点和重点,深入剖析了在嵌入式开发中C语言的重要作用。强调了在嵌入式开发中C的独特地位和编程技巧,带领更多有志于投身嵌入式领域的技术人员迅速提升自己的C编程能力。
培训目的
掌握嵌入式C语言中的重点、难点;
掌握嵌入式C程序开发技巧;
培训内容
函数
函数为程序员提供了基本的代码复用能力,函数在调用返回时究竟发生了什么?局部变量如何分配空间?可变参数列表的机制如何?我们将在这个环节深入底层,去揭开函数调用的面纱。
函数的类型和返回值
函数的参数传递
函数调用过程中的栈帧结构
可变参数列表
递归函数调用
指针
指针,它让C语言与众不同。如何判断指针的类型?指针的速度真的快么?指针运算和整数运算有何不同?指针和数组一样么,不一样么?我们将在这个环节用简单明了的技巧解决一系列含混的指针问题。
判断指针的类型
指针的运算
数组和指针的同异
指向函数的指针
指针与抽象
预编译
如果说指针是C语言的灵魂,那么预编译就是C语言的生命。预编译使得C语言可以变化出多样的外观。预编译如何提高编码的效率?宏定义中有哪些陷阱?文件包含的时候发生了什么?我们将在这个环节用精确的语言来阐述完整的预编译的技巧。
对象宏和函数宏
宏定义技巧和常见错误
#和##运算符
条件编译
文件包含
字符串
字符串处理,这大概是C语言不擅长的事情。C语言的字符串处理有许多被遗忘的角落。在这一阶段,我们带领你重拾C语言的字符串处理函数,以充实你的C语言武器库。
C风格字符串
标准C字符串库函数一览
重点函数实现解析
C字符串处理范例
链接
链接使得程序员可以复用二进制的编译结果。不同种类的变量被放到了哪里?如何控制代码在内存中的位置?PC程序员也许不是很关心的这些问题,但这却是嵌入式程序员的必经之路。我们将在这个环节补上知识链条中缺失的一环。
链接和elf文件格式概述
程序的存储映像
链接脚本和嵌入式程序的存储
文件IO
一切都是文件。在我们的整个课程体系中,我们将从不同的角度来审视这一句话。在这个阶段,我们用C语言来审视UNIX世界中的这个基本价值观。
流和IO重定向
文本文件与二进制文件
用标准C库进行文件操作
标准C和系统调用
·