除字符串参数之外,Fortran 和 C 均以相同的顺序传递参数。但对于每个字符型参数,Fortran 例程都会传递一个附加参数,用以指定串长度。这些参数在 C 中是 long int 数量,按值进行传递。
参数顺序为:
与每个参数相应的地址(数据或函数)
与每个字符参数对应的 long int(字符串长度的完整列表位于其他参数的完整列表之后)
示例:
Fortran 代码片段:
等价的 C 代码片段:
CHARACTER*7 S INTEGER B(3) ... CALL SAM( S, B(2) )
char s[7]; int b[3]; ... sam_( s, &b[1], 7L ) ;