从Fortran退出代码到Linux

我需要定义用Fortran 90编写的程序的退出代码,但是我在路上感到困惑。

我读取并创buildNetCDF文件,因此一些错误代码由NetCDF库提供。 为了将退出代码传递给Linux环境variables,我沿着代码使用exit(status)来终止程序。

但有些事情是错的,至less我不明白。 如果我从NetCDF得到一个错误代码,例如-49 (variables未find),那么程序结束时,检索到的值使用echo $?207 。 为什么?

如果我使用status=-1设置了一些特定的退出,那么$? 值是255

我已经阅读了那些依赖于shell的linux退出代码,其中一些是保留的,还有一些叫做系统错误。

Unix退出代码是无符号的。 如果您返回一个否定的,它将被隐式转换。

256-49 = 207,但这可能是平台相关的。