前言
以下这些都是我自己在学习《C Primer Plus》的过程中所记下的一些个人觉得对学习C语言有一些帮助的内容。
1.源代码文件,目标代码文件和可执行文件
源代码文件-包含了我们使用C语言编写的代码,文件名一般是以.c结尾的。
目标代码文件包含的是机器语言代码,是由源代码文件转换而来的。这里的机器语言代码并不能直接运行,因为缺少了启动代码和库函数。
可执行文件包含组成可执行程序的完整机器语言代码。
这里解释一下什么是启动代码和库函数?
启动代码充当着程序和操作系统之间的接口。
库函数:几乎所有C程序都要使用C标准库中的函数。
2.编译器和链接器
编译器是把源代码转换成可执行代码的程序。可执行代码是用计算机的机器语言表示的代码。这种语言由数字码表示的指令组成。
编译器还会检查C语言程序是否有效。如果c编译器发现错误,就不生成可执行文件并报错。
链接器把编译器翻译好的源代码(目标代码文件)以及库文件和启动代码组合起来,生成一个可执行程序。对于库代码,链接器只会把程序中要用到的库文件代码提取出来。
在大多数系统中,编译器运行链接器。
3.总结
以上这些内容对于想深入学习C语言的人来说是必不可少的基础知识之一,我这里也只是粗略的介绍一下,如果有错误,欢迎指正。