1.对于编程而言,可移植性意味着什么?
意味着在一种系统中编写的C程序稍作修改或不修改就能在其他系统运行。
2.源代码文件,目标代码文件和可执行文件有什么区别?
(1)源代码(.c)是程序员自己编写的代码部分,通俗的说就是在编译器上写下的那部分。
(2)目标代码文件(.obj)是计算机编译器将源程序编译成机器语言代码(0和1的不同组合形成的语言)所得到的东西,因为缺少一些必要的东西,所以它没有啥用。
(3)可执行文件(.exe)就是OK的东西了,它由链接器把目标代码,系统的标准启动代码和库代码这3部分合并在一起后得到的一个文件。(启动代码是操作系统和程序的接口)(操作系统:UNIX,LINUX,Windows,Mac OS等)。
#include<stdio.h>
int main(void)
{
printf("Hell The C World!");
return 0;
}
//这些叫做源代码
/*(以二进制为例子)0010001001000001010010100101010 这样的叫做机器语言*/
3.编程的主要步骤
(1)定义程序的目标
(2)设计程序
(3)编写代码
(4)运行代码
(5)运行程序
(6)测试和调试程序
(7)维护和修改程序
4.编译器的作用
用来编译代码(废话)=将源代码转化成机器语言+运行链接器+检查程序是否有效(报错或者警告)。
5.链接器的作用
给目标代码链接库代码和启动代码,最终成为一个完整的可执行代码。