C 结构在 Fortran
bind 属性也可以应用于派生类型:
geese.h
struct Goose {
   int flock;
   float buoyancy;
}
struct Goose goose_c;
geese.f90
use, intrinsic::iso_c_binding, only : c_int, c_float
type, bind(C) :: goose_t
  integer(c_int) :: flock
  real(c_float) :: buoyancy
end type goose_t
type(goose_t) :: goose_f
现在可以在 goose_c 和 goose_f 之间传输数据。可以使用 type(goose_t) 从 Fortran 调用带有 Goose 类型参数的 C 例程。