构建程序#

像 Fortran、C、C++ 和 Java 等语言(仅举几例)都有一些共同的特点:您使用自己选择的语言编写代码,然后必须从该源代码构建一个可执行程序。其他语言是解释型的——源代码由一个特殊的程序进行分析,并作为直接指令。此类语言的两个非常简单的示例:Windows 批处理文件和 Linux shell 脚本。

在本教程中,我们将重点介绍第一类语言,并以 Fortran 为主要示例。编译语言的一个优点是,构建可执行程序所需的构建过程用于将人类可读的源代码转换为可以在计算机上运行的有效程序。

备注:本教程提供了 Windows 和 Linux 操作系统的示例,但是工作流程和一般原理仍然适用于 macOS。

编译语言#

让我们看一个简单的例子

program hello
    write(*,*) 'Hello!'
end program hello

这几乎是您可以在 Fortran 中编写的最简单的程序,它当然也是最著名的程序之一的变体。尽管用源代码表达起来很简单,但当从该代码构建的可执行文件运行时,实际上会发生很多事情。

  • 在计算机上启动一个进程,以便它可以写入控制台——您在其中键入程序名称的窗口(DOS 窗口、xterm 等)。

  • 它将文本“Hello!”写入控制台。为此,它必须与控制台正确交互。

  • 完成后,它将结束,清理它所占用的所有资源(内存、与控制台的连接等)。

幸运的是,作为高级语言的程序员,您不需要考虑所有这些细节。事实上,这是构建过程(编译器和链接器)负责处理的事情。