06/02/24 13:05:48
199,200で書いたこととは無関係に一般論的な結論を言わせてもらうが、
fortranでは宣言した配列の大きさとは無関係な大きさで配列を使うことが
ままあるので、引数として渡している大きさを配列の宣言長に直すのは、
とても危険である。
FORTRANのライブラリなどでやたらと配列の寸法を引数として求められるのも、
配列は先頭要素のアドレスしか渡しておらず、そのほかの情報を一切渡していない
からである。
またFORTRANでは、この性質を大いにプラスに利用しているので
(というかこれが無いとまともな実用的なプログラムが書けない)これを非難するのは
お門違いである。
FORTRAN90では、配列の次元や寸法も渡しているがその性で、>>200で書いた
ような列ベクトルを渡す時に、余分な処理が必要になって速度が低下する。
こういう時にFORTRAN77式の先頭アドレス渡しの簡潔さが心地よく感じられる。