【C言語】無限ループで制御できなくなったプログラムを停止させる方法

C 言語でプログラミングをしていると、プログラムのバグがあって無限ループになってしまったということを一度は経験したことがあるかもしれません。

もしくは今現在無限ループに陥ってしまって困っているという方もいるのではないでしょうか。

今回は無限ループで暴走してしまったプログラムを停止させる方法について紹介します。

目次から探す

無限ループしているプログラムを停止させる方法

無限ループしているプログラムを停止させる方法はいくつかあります。順番に見ていきましょう。

Ctrl+Cキーを押す(コンソールプログラム限定)

コンソールプログラムであれば、Ctrl+Cキーを押してカレントフォアグラウンドプロセスに割り込みシグナルを出してプログラムを強制的に停止させることができます。

強制終了させた例

終了コードとともにプログラムが停止したことがメッセージとして表示されます。

この時点で無限ループしていたプログラムが停止しているので、任意のキーを押すかウィンドウ右上のを押して閉じれます。

Alt+F4キーを押す

Alt+F4キーは現在選択しているウィンドウを強制終了させることができるコマンドです。

これは無限ループで閉じれなくなったウィンドウにも有効で、無限ループで固まってしまったウィンドウを選択した状態でAlt+F4キーを押すとプログラムを強制終了させることができます。

パソコンそのものがフリーズしていない限りはこの方法で強制終了させられるので覚えておきましょう。

抜けられない無限ループが起きないよう気をつけよう

break文でループを抜ける形の無限ループを実装することはよくある話ですが、抜けられない無限ループになってしまうと、強制終了させない限りいつまでたってもプログラムが進まないので気をつけましょう。

意図しない無限ループを解消できるまで、トレース・修正を繰り返して、抜けられるループにできるよう改良してくださいね。

目次から探す