日曜日, 11月 02, 2008

Fortranの予約語?

最近中ボスに言われて研修に来ている学生さんにFortranと数値計算を教えているんですが、学生さんが書いたコードに

integer :: end = 0

みたいなのがあったのです。

endFortranでは予約語だから変数名に使ってはいけないよ」と言ったのですが、gfortranではエラーになってる様子はなかったんですね。

ここを読んでいたら今またそれを思い出しまして、ちょっと調べてみましたところ驚くべき結果が!(物を知らないねこさん限定で)

試しに

program if print*,'code 2' end program if program code3 integer :: if if = 3 print*,if end program code3

とかいうコードを書いてもちゃんとコンパイルできるし、ちゃんと動く…今まで使ってきて「Fortranには予約語がない」という、どう考えても基本的な事実すらねこさんは全然知らなんだー orz もっと勉強せねばなー。

来週、学生さんに謝っておかねば。

0 件のコメント: