ASSIGN - 文番号代入

:整数変数に文番号を代入します。この機能は Fortran 95 の廃止事項です。これは Fortran 90 の廃止予定事項でした。Compaq Fortran は Fortran 95 の廃止事項を完全にサポートしています。

形式

ASSIGN label TO var

label
ASSIGN 文と同じ有効域にある飛び先文または FORMAT 文の文番号。

var
スカラ整数変数。

規則と振る舞い

ASSIGN 文が実行されると,文番号が整数変数に代入されます。これ以降,変数は整数変数としては不定となり,(後に整数値を使って再定義されない限り) 文番号としてしか使えなくなります。

ASSIGN 文は,代入された変数が使用されている文よりも前に実行されていなくてはなりません。

整数変数を使った直接分岐は,プログラムの流れを読み難くします。特に,整数変数が数値計算にも使われている場合です。このような文の利用は,整数変数の矛盾した利用を許容し,解りづらいソースのエラーを発生します。ASSIGN 文は内部手続をシュミレートするために使われていましたが,今では直接コーディングすることができます。

互換性

CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB

関連情報

Assignment (代入) - 組込みFortran 90 の廃止予定事項

文番号の値は,その数字と同じではありません。しかしながら,文番号はコンパイラによって割り付けられた数字で識別されます。以下の例では,400IVBL の文番号値 (値ではありません) です。

	ASSIGN 400 TO IVBL

ASSIGN 文で使われている変数は,整数として定義されていません。数値式で ASSIGN 文で定義されている変数を使いたい場合,最初に計算形代入文か READ 文で変数を定義しなければなりません。以下に例を示します。

	IVBL = 400

次の例は,ASSIGN 文を示しています。

	INTEGER ERROR
	...
	ASSIGN 10 TO NSTART
	ASSIGN 99999 TO KSTOP
	ASSIGN 250 TO ERROR   

NSTARTKSTOP は暗黙のうちに整数変数となりますが,ERROR は事前に整数変数として宣言しておかなくてはならないことに注意してください。

次の文は,変数 NUMBER に文番号 100 を代入しています。

	ASSIGN 100 TO NUMBER

次の例のように,これに続いて,変数 NUMBER に対して算術演算を実行した場合,実行時の振る舞いは予測不可能になります。

	NUMBER = NUMBER + 1

NUMBER を整数変数に戻すには,次のような文を使用します。

	NUMBER = 10

この文は,NUMBER を文 100 から切り離し,10 という整数値を代入します。いったん整数変数に戻された NUMBER は,割当て形 GO TO 文で使用することはできません。