【发布时间】:2013-08-11 09:09:40
【问题描述】:
DO 循环是如何工作的?
假设您有以下循环:
do i=1,10
...code...
end do
write(*,*)I
为什么打印的 I 是 11,而不是 10?
但是当循环由于一个
而停止时if(something) exit
I 符合预期(例如 i=7,退出,因为某个其他值达到了它的限制)。
【问题讨论】:
-
抱歉,没有找到这个问题。我的是重复的。感谢您的提示。
-
另见Fortran 2008 standard 的 8.1.6.6.2 和 8.1.6.6.4 部分。后者声明:“当 DO 构造变为非活动状态时,DO 构造的 DO 变量(如果有)将保留其最后定义的值。”,而前者给出了循环迭代的详细信息。