Fortran Coder

标题: 一个关于函数返回指针的问题 [打印本页]

作者: lookbook    时间: 2019-6-26 11:56
标题: 一个关于函数返回指针的问题
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上有这个用法。



作者: liudy02    时间: 2019-6-26 13:13
fun()=2
print*,a

这是什么鬼东西……
作者: lookbook    时间: 2019-6-26 13:16
liudy02 发表于 2019-6-26 13:13
fun()=2
print*,a

好久不见,要不你也去群里吧。
作者: liudy02    时间: 2019-6-26 15:47
lookbook 发表于 2019-6-26 13:16
好久不见,要不你也去群里吧。

什么群,我完全不知道啊……
作者: liudy02    时间: 2019-6-26 15:51
仔细看了下,原来有句contains
讨论的是函数返回的指针能不能被赋值的问题
fortran好像没有特别明确左值和右值的问题,不知道语言标准是咋定的
作者: lookbook    时间: 2019-6-26 16:08
liudy02 发表于 2019-6-26 15:47
什么群,我完全不知道啊……

搜索 Fortran Coder
作者: li913    时间: 2019-6-26 16:08
我试了下,ivf2019可以运行。这个的确有趣。
作者: lookbook    时间: 2019-6-26 16:08
liudy02 发表于 2019-6-26 15:51
仔细看了下,原来有句contains
讨论的是函数返回的指针能不能被赋值的问题
fortran好像没有特别明确左值和 ...

你是对Cpp有很深的了解吧
作者: lookbook    时间: 2019-6-26 16:10
li913 发表于 2019-6-26 16:08
我试了下,ivf2019可以运行。这个的确有趣。

给我加精
作者: li913    时间: 2019-6-26 16:12
lookbook 发表于 2019-6-26 16:10
给我加精

那得版主才行。
作者: liudy02    时间: 2019-6-26 16:18
lookbook 发表于 2019-6-26 16:08
搜索 Fortran Coder

QQ?微信?
作者: liudy02    时间: 2019-6-26 16:19
lookbook 发表于 2019-6-26 16:08
你是对Cpp有很深的了解吧

没学过cpp,甚至没有正经学过C
只是看过一遍《C Primer Plus》而已




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2