2

假设我有一个 C 函数void foo(int* val),为此我编写了以下 Fortran C 绑定(我希望符合 F2008 标准):

use, intrinsic :: iso_c_binding
...
subroutine foo(val) bind(c)
  integer(kind=c_int), intent(inout) :: val
end subroutine

C 函数的实现通过检查指针来void foo(int* val)将参数视为可选的。我的问题是:如何设置和/或使用 Fortran C 绑定,使其支持可选,即实际上将空指针传递给 C 函数?valNULLsubroutine foo(val)val

4

0 回答 0