Fortran Coder

查看: 13911|回复: 11

[指针] 一个关于函数返回指针的问题

[复制链接]

79

帖子

17

主题

0

精华

专家

齊天大聖

F 币
433 元
贡献
266 点
发表于 2019-6-26 11:56:15 | 显示全部楼层 |阅读模式
program main
  implicit none

  integer,target :: a

  a=1

  fun()=2
  print*,a
contains
  function fun() result(ptr)
    integer,pointer :: ptr

    ptr=>a
  end function fun

end program main

gf, pgi都能通过,结果是2。
这个很有趣,
翻了下chapman的书,上面明确表示不能放左边,
但IFC 19.0上有这个用法。


178

帖子

15

主题

0

精华

大宗师

F 币
4973 元
贡献
1152 点
发表于 2019-6-26 13:13:25 | 显示全部楼层
fun()=2
print*,a

这是什么鬼东西……

79

帖子

17

主题

0

精华

专家

齊天大聖

F 币
433 元
贡献
266 点
 楼主| 发表于 2019-6-26 13:16:57 | 显示全部楼层

好久不见,要不你也去群里吧。

178

帖子

15

主题

0

精华

大宗师

F 币
4973 元
贡献
1152 点
发表于 2019-6-26 15:47:18 | 显示全部楼层
lookbook 发表于 2019-6-26 13:16
好久不见,要不你也去群里吧。

什么群,我完全不知道啊……

178

帖子

15

主题

0

精华

大宗师

F 币
4973 元
贡献
1152 点
发表于 2019-6-26 15:51:27 | 显示全部楼层
仔细看了下,原来有句contains
讨论的是函数返回的指针能不能被赋值的问题
fortran好像没有特别明确左值和右值的问题,不知道语言标准是咋定的

79

帖子

17

主题

0

精华

专家

齊天大聖

F 币
433 元
贡献
266 点
 楼主| 发表于 2019-6-26 16:08:11 | 显示全部楼层
liudy02 发表于 2019-6-26 15:47
什么群,我完全不知道啊……

搜索 Fortran Coder

790

帖子

2

主题

0

精华

大宗师

F 币
3765 元
贡献
2255 点
发表于 2019-6-26 16:08:40 | 显示全部楼层
我试了下,ivf2019可以运行。这个的确有趣。

79

帖子

17

主题

0

精华

专家

齊天大聖

F 币
433 元
贡献
266 点
 楼主| 发表于 2019-6-26 16:08:48 | 显示全部楼层
liudy02 发表于 2019-6-26 15:51
仔细看了下,原来有句contains
讨论的是函数返回的指针能不能被赋值的问题
fortran好像没有特别明确左值和 ...

你是对Cpp有很深的了解吧

79

帖子

17

主题

0

精华

专家

齊天大聖

F 币
433 元
贡献
266 点
 楼主| 发表于 2019-6-26 16:10:25 | 显示全部楼层
li913 发表于 2019-6-26 16:08
我试了下,ivf2019可以运行。这个的确有趣。

给我加精

790

帖子

2

主题

0

精华

大宗师

F 币
3765 元
贡献
2255 点
发表于 2019-6-26 16:12:10 | 显示全部楼层

那得版主才行。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-3-29 20:58

Powered by Tencent X3.4

© 2013-2024 Tencent

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