Fortran Coder

查看: 8399|回复: 1
打印 上一主题 下一主题

[指针] 求助一个关于指针的问题

[复制链接]

1

帖子

1

主题

0

精华

新人

F 币
12 元
贡献
5 点
跳转到指定楼层
楼主
发表于 2021-4-8 22:32:16 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 LEM 于 2021-4-8 22:31 编辑

[Fortran] 纯文本查看 复制代码
MODULE typedef
    IMPLICIT NONE
    TYPE :: tree
        INTEGER,ALLOCATABLE :: mat(:)
        INTEGER :: a
        TYPE(tree),POINTER :: ltree
        TYPE(tree),POINTER :: rtree
    END TYPE
END MODULE typedef

PROGRAM test
    USE typedef
    IMPLICIT NONE
    TYPE(tree),POINTER :: root => NULL()
    TYPE(tree),POINTER :: temp1 => NULL(),temp2 => NULL()
    
    ALLOCATE(root,temp1,temp2)
    ALLOCATE(temp1%mat(5),temp2%mat(6))
    temp1%mat = 1
    temp2%mat = 2
    temp1%a = 1
    temp2%a = 2
    root%ltree => temp1
    root%rtree => temp2
END PROGRAM test

我在24行添加断点,发现root%ltree%mat没有被赋值(如下图所示)
请问各位大神,是什么原因呢

L[FEKY~])R9L4%}BKG~~RZQ.png (21.84 KB, 下载次数: 333)

L[FEKY~])R9L4%}BKG~~RZQ.png
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
沙发
发表于 2021-4-9 08:48:29 | 只看该作者
我这里正常,估计是调试器bug

QQ截图20210409084737.jpg (95.14 KB, 下载次数: 360)

QQ截图20210409084737.jpg
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-11-15 01:26

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表