Fortran 中的指针

编程入门 行业动态 更新时间:2024-10-23 05:38:19

Fortran 中的<a href=https://www.elefans.com/category/jswz/34/1768268.html style=指针"/>

Fortran 中的指针

  • Fortran 中的指针

  • 指针可以看作一种数据类型
    • 指针存储与之关联的数据的内存地址
    • 变量指针:指向变量
    • 数组指针:指向数组
    • 过程指针:指向函数或子程序
  • 指针状态
    • 未定义
    • 未关联
integer, pointer::p1=>null()
!或者
nullify(p1)
    • 已关联

  • 指针操作
    • 指向
      • 将变量、数组、过程或指针的内存地址以及其他信息(数组上下界、过程接口等)赋值给指针
    • 赋值
      • 将非过程的量所关联的值赋值到指针所关联的地址。涉及到的所有指针必须已经关联到足够的内存空间

  • 指针状态查询函数
associated(pointer) !是否已经有关联
associated(target, pointer) !这两个是否有关联
  • example-1:变量指针
! A fortran95 program for G95
! By WQY
program testimplicit noneinteger, target::a=1integer, pointer::p=>null()print*, associated(p)p=>aprint*, associated(p)print*, associated(p, a)pause
end program

  • example-2:数组指针
! A fortran95 program for G95
! By WQY
program testimplicit noneinteger, target::a(2, 3)=999integer, pointer::p(:, :)=>null()print*, associated(p)p=>aprint*, associated(p)print*, associated(p, a)pause
end program

  • example-3:过程指针
! A fortran95 program for G95
! By WQY
program testuse minteger::a=1procedure(pro), pointer::pinterfacesubroutine pro(a)integer aend subroutineend interfacep=>subcall p(a)pause
end programmodule mcontainssubroutine sub(a)integer aprint*, "sub:", aend subroutine sub
end module



更多推荐

Fortran 中的指针

本文发布于:2023-11-15 07:57:08,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1596292.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:指针   Fortran

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!