2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

C/C++/C# における Loop Keywords

Posted at

C/C++/C# における Loop 文のキーワード解説

プログラミングにおいて、ループ処理は非常に重要な要素です。C、C++、C# では、ループ内で使われる特定のキーワードがあり、処理の流れを制御するのに役立ちます。本記事では、returnbreakcontinue の3つのキーワードについて詳しく解説します。

1. return:関数を終了する

return は、関数の実行を即座に終了し、呼び出し元に制御を戻すためのキーワードです。ループの中で return が呼ばれると、ループの処理だけでなく、関数全体の実行も終了します。

使用例

#include <iostream>

void exampleFunction() {
    for (int i = 0; i < 5; i++) {
        if (i == 3) {
            std::cout << "Returning at i = " << i << std::endl;
            return; // 関数の実行を終了
        }
        std::cout << "i = " << i << std::endl;
    }
    std::cout << "This line will not be executed if i == 3" << std::endl;
}

int main() {
    exampleFunction();
    std::cout << "Back in main function" << std::endl;
    return 0;
}

実行結果

i = 0
i = 1
i = 2
Returning at i = 3
Back in main function

return が呼ばれた時点で exampleFunction の実行が終了し、それ以降の処理は行われません。

2. break:ループを抜ける

break は、現在のループ(forwhiledo-while など)の実行を途中で終了し、ループの外に制御を移します。

使用例

#include <iostream>

int main() {
    for (int i = 0; i < 5; i++) {
        if (i == 3) {
            std::cout << "Breaking at i = " << i << std::endl;
            break; // ループを抜ける
        }
        std::cout << "i = " << i << std::endl;
    }
    std::cout << "Loop finished" << std::endl;
    return 0;
}

実行結果

i = 0
i = 1
i = 2
Breaking at i = 3
Loop finished

i == 3 になった時点で break が呼ばれ、ループを終了して Loop finished が出力されます。

3. continue:次のループの繰り返しに進む

continue は、現在のループの処理をスキップし、次の繰り返しに進むためのキーワードです。ループ自体を終了するわけではありません。

使用例

#include <iostream>

int main() {
    for (int i = 0; i < 5; i++) {
        if (i == 3) {
            std::cout << "Skipping i = " << i << std::endl;
            continue; // 残りの処理をスキップして次のループへ
        }
        std::cout << "i = " << i << std::endl;
    }
    std::cout << "Loop finished" << std::endl;
    return 0;
}

実行結果

i = 0
i = 1
i = 2
Skipping i = 3
i = 4
Loop finished

i == 3 のとき continue が実行され、それ以降の処理(std::cout << "i = " << i << std::endl;)はスキップされます。ただし、ループは継続し、i = 4 の処理は実行されます。

まとめ

キーワード 役割
return 関数を途中で終了する
break ループを途中で終了する
continue ループの現在の処理をスキップし、次の反復へ進む

これらのキーワードを適切に使い分けることで、プログラムの制御を柔軟に行うことができます。特に、無限ループの制御やエラーハンドリングにおいて breakreturn は非常に便利です。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?