gpt4 book ai didi

save - fortran 保存整数

转载 作者:行者123 更新时间:2023-12-01 04:37:35 30 4
gpt4 key购买 nike

我今天看到一些代码,看起来有点像这样:

      subroutine foo()
real blah
integer bar,k,i,j,ll
integer :: n_called=1
save integer

...
end

似乎这里的意图可能是save n_called,但即使是保存所有整数的有效声明——或者它是否隐式声明了一个名为integer的变量并保存它?

最佳答案

第二种解释是正确的。 Fortran 有很多关键字,INTEGER 就是其中之一,但它没有保留字,这意味着关键字可以用作标识符,尽管这通常是一个糟糕的想法 (但尽管如此,它仍然适用于 C#,在 C# 中可以在关键字前加上 @ 并将其用作标识符,对吗?)

SAVE 语句,即使它是为 n_called 而设计的,也是肤浅的。 Fortran 自动保存所有具有初始化程序的变量,这就是代码可能按预期工作的原因。

 integer :: n_called=1

此处n_called 自动SAVE。对于被迫维护/扩展/创建新 Fortran 代码的 C/C++ 程序员来说,这通常是一个非常糟糕的惊喜:)

关于save - fortran 保存整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10817960/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com