Sun Studio 12:Fortran 编程指南

11.2 Fortran 初始化例程

f95 编译的主程序在程序启动时会调用库中的伪初始化例程 f90_init。库中的这些例程是不进行任何操作的伪例程。编译器生成的调用将指针传递到程序的参数和环境。这些调用会提供软件挂钩,您可以在 C 中用软件挂钩提供自己的例程,以便在程序启动之前以任何定制方式初始化程序。

这些初始化例程的一种可能用途是,为国际化 Fortran 程序调用 setlocale。由于 setlocalelibc 以静态方式链接时不起作用,因此只有以动态方式链接了 libc 的 Fortran 程序才能进行国际化。

库中 init 例程的源代码如下


void f90_init(int *argc_ptr, char ***argv_ptr, Char ***envp_ptr) {}

f90_initf95 主程序调用。参数分别被设置为 argcargvenvp 的地址。