Fortran, Meaning of Unary* operator in function calls?
我正在尝试对旧的 fortran 代码进行修改,以使其能够处理稍微不同的二进制输入文件格式。在执行此操作的过程中,我遇到了 * 以一元方式使用。例如,在循环中找到以下代码:
1 2
| CALL EVENT1(QDRBUF(IPNTR+EVTHSZ),EVTSIZ,EVTID,
- *11000,*10000,*80000) |
还有其他情况,但据我所见/记得它仅在函数调用中。这是在做什么?
- Fortran return 语句的可能重复项
-
我认为这是同一主题,但不是重复的问题。
-
我同意弗拉基米尔的观点。您建议重复的问题的答案,请回答我的问题,但问题本身并没有重复。他们的问题是关于 return 语句,我的问题是关于函数调用。正如弗拉基米尔所说,相同的主题不同的问题。
我不是 Fortran 人,但这个问题让我很感兴趣,所以我做了一些调查。它似乎是一个备用返回说明符。星号后面的数字是一个标签,可以用来代替正常返回,几乎就像捕获异常一样。
- 谢谢,我的大部分编码都是用 cpp 和 python 编写的,所以在我使用 fortran 代码的罕见情况下,语法的某些方面偶尔会让我停下来,因为我什至不知道在搜索 Internet 时如何称呼它们。我什至没有想到人们可能会将有效的 goto 标签作为函数参数。再次感谢。
-
这是对的。您在 RETURN 语句中添加一个数字(1、2 等)以指示在返回时控制在哪个备用语句号(不是行号)处恢复。