違いCOBOLのGOBACKとSTOP RUNの違い
GOBACKとSTOP RUNの論理的な終了を参照するステートメントです。COBOL
STOP RUNとGOBACKは、COBOLプログラミングでよく使用される2つの用語です。 GOBACKは、COBOL内の特定のプログラムの論理的な終了を参照する文です。一方、STOP RUNは、プログラムを単独で終了するか、またはCOBOLプログラムによって呼び出された場合に終了します。これらの2つのそれぞれが何を参照しているのか、それらが実行する類似の機能の違いについて本当に考える時間をとったことがありますか?まあ、これらの2つは確かに違いがありますが、この記事で扱うのはこれらの違いです。
<! - 1 - >あなたが想像するように、STOP RUNはそのことを綴ります。それは、停止するために実行していたCOBOL内のプログラムを持つ必要があると推測します。したがって、STOP RUNは、指定された実行単位を終了させると言えます。また、STOP RUNは、実行単位内のすべての動的関連プログラムを削除します。ただし、STOP RUNを実行してもメインプログラムは削除されず、リンクプログラムで編集されたプログラムのみが削除されることに注意してください。
<! STOP RUNステートメントはCOBOLプログラミングの最後のステートメントである必要はありませんが、STOP RUNに続くものはCOBOLで実行されないことに気づかなければなりません。つまり、STOP RUNは、関連するプログラムで定義されているすべてのファイルを閉じます。一方、GOBACKは、特定のプログラムの論理的な終了を指定するステートメントであり、呼び出されたメソッドも指定します。 GOBACKステートメントがCOBOLに挿入されるときはいつでも、それが推論されるすべてのステートメントの末尾にあることが重要です。 GOBACKの実行後に現れるステートメントは実行されません。<! - 3 - >
STOP RUNコマンドの実行後、COBOLがオペレーティングシステム(OS)に戻ります。メインプログラムに戻るには、STOP RUNを使用しないでください。代わりに、出口プログラムを使用することをお勧めします。 GOBACKコーディングは、プログラムまたはサブプログラムとしてコード化されたときにうまく機能します。それが入力されると、入力された時点から制御が行われます。
GOBACKによって採用される一般的な構文フォーマットは、文の中で命令文の連続したシーケンスに現れる点を含む。 GOBACKはシーケンス内の最後の文として指定する必要があります。 GOBACKを挿入した後の文は実行されないためです。実行時要素によって制御されているCOBOLプログラムでGOBACK文が実行された場合、実行時プログラムはEXIT文を実行するのと同様に動作します。また、GOBACKで可能なように、STOP RUNをサブプログラムとして使用することは不可能であることに注意することも重要です。STOP RUNはメインプログラムでのみ実行できます。関数内でGOBACK文が実行されるたびに、関数はEXIT文を実行するように指示されたかのように動作します。
概要
STOP RUNは、メインプログラムでのみ使用できます。実行されると、OSに戻ります。
GOBACKは、メインプログラムとサブプログラムの両方で使用できます。
GOBACKは、コントロールをメインプログラムまたはOSに戻します。
GOBACK実行後のステートメントは、後続のステートメントが実行されないようにします。
STOP RUN後のステートメントも実行されません。
サブプログラム内のGOBACKは、退出プログラムとして機能する。
実行時要素によって制御されるGOBACK文の実行。
GOBACK文は、COBOLプログラム内で実行され、ランタイム要素によって制御され、実行時プログラムをEXITを実行するのと同じように動作させます。