C语言特点: 1 良好的可移植性 2 接近机器语言 3 高效 操作系统大部分可以用C语言编写,少部分与硬件紧密相关的部分用汇编来写。 许多与硬件相关的操作由C标准库提供。C高度的可移植性归功于它是一门只含少量硬件相关 元素的紧凑的核心语言。C是特别为系统编程设计的,常被用来开发文字处理、数据库、图像 处理软件等。 C程序的结构: 预处理命令 全局变量定义 函数定义 每一个C源文件和它所包含的头文件构成一个翻译单元。 printf中转义字符: \b 退格 \n 回车换行 \r 回车--移动到行首 C编译器是如何工作的? 每一个翻译单元由一个源文件和被它引用的头文件构成,如果没有错误,编译器将产生一个包含 相应机器码的目标文件。之后,编译器会调用链接器,把所有目标文件、所有用到的标准库函数 联合起来组成一个可执行文件。可执行文件还包含目标系统加载和执行它所需要的信息。 总的来说编译过程分为:预处理、编译、链接。 预处理: 1 字符的转换。根据需要把某些字符转换成源字符集中的字符。 2 处理反斜杠续行 -- 删除反斜杠和换行 3 源文件被分解成预处理标记和一系列空白符 编译: 1 执行预处理指令,扩展宏调用 2 字符常量和字符串中的字符和转义系列被转换成执行环境字符集中的字符。 3 执行真正的编译工作:编译器分析前面预处理工作生成的标记系列并生成相应的机器码。 链接: 链接器解决外部对象和函数的引用,生成可执行文件。