1,编译型语言,像c和c++都是,在源代码成为可执行文件的过程中,需要两个主要工具,
编译器和连接器。
2,编译器将源代码翻译成目标代码,也就是机器代码、二进制文件,此时的二级制文件是不可以执行的,
因为它只包含自身源代码的二进制文件,还需要启动代码和其他库文件,
3,启动代码是根据操作系统确定的,也就是程序的入口点,不同的操作系统运行程序的方式不同,启动代码
不相同,不同程序就不能跨操作系统喽,好了,连接器将启动代码嫁到目标代码中。
4,其他库文件,也就是源代码调用其他函数的二级制文件、目标文件,将他们也加到源代码生成的目标代码中,
好了,这样就ok了,这个目标代码就称为了可执行文件了,执行它就没问题了
编译器和连接器。
2,编译器将源代码翻译成目标代码,也就是机器代码、二进制文件,此时的二级制文件是不可以执行的,
因为它只包含自身源代码的二进制文件,还需要启动代码和其他库文件,
3,启动代码是根据操作系统确定的,也就是程序的入口点,不同的操作系统运行程序的方式不同,启动代码
不相同,不同程序就不能跨操作系统喽,好了,连接器将启动代码嫁到目标代码中。
4,其他库文件,也就是源代码调用其他函数的二级制文件、目标文件,将他们也加到源代码生成的目标代码中,
好了,这样就ok了,这个目标代码就称为了可执行文件了,执行它就没问题了