• ベストアンサー

プログラム実行を途中で抜け出す方法は exit ?

検索結果を表示するプログラムをPerl で書いています。すでに検索結果が表示されているとします。そして次の文字列を検索したところ対象が見つからなかった、という場合、表示画面には一つ前の結果が出たままにしておきたいので、実行中のプログラム内で結果ゼロと判明した箇所からexit したいのです。exit と解説書に書かれていたのですが、エラーになりました。あるいはgoto でプログラム末尾に飛ぶようなことができるのでしょうか?お教えいただければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.2

perlにもgotoはあります。 詳しくは、マニュアルperlfuncをどうぞ。 ただ、exitでエラーになるっていうが、CGIの中で単にexitしたらInternal Server errorになった、っていう話なら、単純にgotoするだけじゃ済まないと思われます。

tonka729
質問者

お礼

osamuyさま、ええ、単純ではないみたいなのです。どうもありがとうございました。まだよく分からないことがありますので、もうちょっと調べてみることにいたします。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • the845t
  • ベストアンサー率33% (246/743)
回答No.1

forやforeach、while中それを抜けたいのだと思います。 その場合は、last;で抜けられます。 exit;だとプログラム自体が終了するので、 ヘッダが出力されていない場合などでエラーが出ますね。

tonka729
質問者

お礼

for, foreach, while 文から抜けるときはlastだということは知っています。プログラムにはループ文だけでなくprint 文もあります。私が困っているのはこれらすべてをスキップする方法です。gotoの類はありますか?なければ if 文で最後までくくって外へ逃げるしかありませんか?

すると、全ての回答が全文表示されます。

関連するQ&A