switch ステートメントではデフォルトのオプションは必要ありません。 switch ステートメントは、実行後にプログラム エントリとして条件を満たす case 値を最初に探します。すべてのケースが満たされない場合は、デフォルト エントリを探します。見つからない場合はステートメント全体を終了します。デフォルトは単にバックアップ エントリであり、存在するかどうかは関係ありません。
このチュートリアルの動作環境: Windows7 システム、C99 バージョン、Dell G3 コンピューター。
Switch は一部のコンピュータ言語の予約語であり、その機能はほとんどの場合に判断と選択を行うことであり、case、break、default と組み合わせて使用されることがよくあります。
switch ステートメントを使用すると、さまざまな条件に基づいてさまざまなアクションを実行できます。
switch ステートメントは条件付き選択ステートメントです。まず、条件を満たす case の値が実行後にプログラム エントリとして検索されます。すべての case が満たされない場合は、デフォルトのエントリが検索されます。そうでない場合は、デフォルトのエントリが検索されます。見つかった場合、スイッチ全体が終了します。ステートメント; したがって、デフォルトは単なるバックアップ エントリであり、存在するかどうかは関係ありません。
ただし、エラー チェックやロジック チェックの場合は、デフォルトのブランチを switch ステートメントに追加する必要があります。
たとえば、次の switch ステートメントは完全に正当です:
switch (char_code) { case tyt: case 'y': printf ( " You answered YES ! \n" ) break case 'N': case 'n': printf ("You answered NO!\n"); break }
しかし、不明な文字がこの switch ステートメントに渡された場合はどうなりますか? 現時点では、プログラムには出力がありません。したがって、この状況に対処するにはデフォルト ブランチを追加するのが最善です。
...... default: printf ("Unknown response : %d\n", char_code); break ......
さらに、デフォルト ブランチはロジック チェックに非常に便利です。たとえば、switch ステートメントを使用して一定数の条件を処理し、これらの条件外の値が論理エラーであると考えられる場合、論理エラーを識別するためのデフォルトの分岐を追加できます。
次を参照してください:
void move_cursor (int direction) { switch (direction) { case UP: cursor_up() break case DOWN: cursor_down() break case LEFT: cursor_left () break case RIGHT: cursor_ right ( ) break default: printf ("Logic error on line number %ld!!! \n", __ LINE__ ) break } }
プログラミング関連の知識については、プログラミング学習 Web サイト をご覧ください。 !
以上がswitch ステートメントにデフォルト オプションは必要ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。