ホームページ >バックエンド開発 >C++ >C switch ステートメントの case ステートメントで範囲を使用できますか?

C switch ステートメントの case ステートメントで範囲を使用できますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-23 04:52:17377ブラウズ

Can I Use Ranges in Case Statements in a C   Switch Statement?

C の Switch ステートメントで値の範囲を選択するにはどうすればよいですか?

C では、switch ステートメントを使用してさまざまな関数を実行できます。変数の値に応じたコード。通常は、確認する値ごとに個別の case ステートメントを使用します。ただし、一部のプログラミング言語では、case ステートメントで値の範囲を使用できます。

たとえば、次のコードを考えてみましょう。

switch (score) {
    case >= 100:
        // ...
        break;
    case >= 50:
        // ...
        break;
    // ...
}

このコードは範囲を使用しようとしています。 case ステートメントに値を含めることができますが、C はこの構文をサポートしていないため、コンパイラ エラーが発生します。

この問題を解決するには、一連の個別のメソッドを使用できます。範囲内の各値に対する case ステートメント。例:

switch (score) {
    case 100:
    case 101:
    case 102:
        // ...
        break;
    case 50:
    case 51:
    case 52:
        // ...
        break;
    // ...
}

また、一部のコンパイラは、次の構文を使用して case ステートメントで値の範囲を指定できる C 言語の拡張機能をサポートしている場合があります。

switch (score) {
    case 0 ... 9:
        // ...
        break;
    case 10 ... 24:
        // ...
        break;
    // ...
}

ただし、この拡張機能はすべてのコンパイラでサポートされているわけではないことに注意することが重要です。そのため、複数のコンパイラをサポートする必要がある場合は、この拡張機能の使用を避けることをお勧めします。

以上がC switch ステートメントの case ステートメントで範囲を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。