不鼓励在 C 与 Fortran 例程之间传递字符串。但是,具有字符串值的 Fortran 函数等同于具有两个附加第一参数(数据地址和串长度)的 C 函数。Fortran 函数及其相应的 C 函数的一般样式如下:
Fortran 函数 |
C 函数 |
|
---|---|---|
CHARACTER*n FUNCTION C(a1, ..., an) |
|
以下是一个示例
表 11–15 返回 CHARACTER 串的函数
Fortran 调用 C |
C 调用 Fortran |
||
---|---|---|---|
|
|
在本例中,C 函数和调用 C 例程必须在列表(字符参数的长度)末尾提供两个额外的初始参数(指向结果字符串和串长度的指针)和一个附加参数。请注意,在从 C 中调用的 Fortran 例程中,需要显式添加一个末尾空字符。缺省情况下,Fortran 字符串不以空字符终结。