1.源代码是用户编写的程序代码(.c);

  目标代码是源代码通过编译器编译后生成的文件(.obj);

  可执行文件是目标代码文件通过链接器处理后的文件(.exe);

2.编译器负责编译源文件,链接器负责将源文件中用到的库函数(如:printf()等)和启动代码(不同操作系统的不同)

  与目标文件合并在一起生成可执行文件。当然,这三种文件都是由机器语言构成。

3.C语言的可移植性体现在同一源文件,通过不同平台上的C编译器可以实现统一的目标。

4.C语言的缺点是其可重用性差。这也就是C++诞生的原因之一。