使用fortran-iso-c-binding,我可以连接C函数并获取类型的变量,如
real(c_float)
integer(c_int)
但是在程序的其余部分我想使用基本类型(仅仅因为我不想仅仅因为一个接口函数而用real(c_float)
变量替换许多实变量)
是否有一种安全的,平台/编译器独立且可靠的方法如何将fortran-iso-c-binding类型转换回fortran(primitive)类型? equivalent to REAL()
答案 0 :(得分:4)
REAL内在是你想要的。或者相当于简单的任务。
REAL(C_FLOAT) :: r_c
REAL :: r_default
r_default = r_c
如果转换的值超出目标类型的范围,则表示您的程序不符合。