Clicky
Showing changes from revision #3 to #4:
(追記) Added (追記ここまで) | (削除) Removed (削除ここまで) | (削除) Chan (削除ここまで)(追記) ged (追記ここまで)
c_loc(x)
determines the C address of the argument.
Fortran 2003 and later
result = c_loc(x)
result = c_loc(x)
(追記ここまで)
x
-pointer
(追記ここまで)(追記) or (追記ここまで)target
attribute.(追記) It (追記ここまで)(追記) shall (追記ここまで)(追記) not (追記ここまで)(追記) be (追記ここまで)(追記) a (追記ここまで)(追記) coindexed (追記ここまで)(追記) object. (追記ここまで)(追記) It (追記ここまで)(追記) shall (追記ここまで)(追記) either (追記ここまで)(追記) be (追記ここまで)(追記) a (追記ここまで)(追記) variable (追記ここまで)(追記) with (追記ここまで)(追記) interoperable (追記ここまで)(追記) type (追記ここまで)(追記) and (追記ここまで)(追記) kind (追記ここまで)(追記) type (追記ここまで)(追記) parameters, (追記ここまで)(追記) or (追記ここまで)(追記) be (追記ここまで)(追記) a (追記ここまで)(追記) scalar, (追記ここまで)(追記) nonpolymorphic (追記ここまで)(追記) variable (追記ここまで)(追記) with (追記ここまで)(追記) no (追記ここまで)(追記) length (追記ここまで)(追記) type (追記ここまで)(追記) parameters. (追記ここまで)The return value is of type c_ptr
and contains the C address of the argument.
subroutine association_test(a,b)
use iso_c_binding, only: c_associated, c_loc, c_ptr
implicit none
real, pointer :: a
type(c_ptr) :: b
if(c_associated(b, c_loc(a))) &
stop 'b and a do not point to same target'
end subroutine association_test
c_associated, c_funloc, c_f_pointer, c_f_procpointer, iso_c_binding