ホームページ >バックエンド開発 >C++ >C 配列に要素が存在するかどうかを確認するにはどうすればよいですか?

C 配列に要素が存在するかどうかを確認するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-10 00:03:03351ブラウズ

How to Determine If an Element Exists in a C   Array?

配列内の要素の存在の確認 (C )

問題:
C 配列内に要素が存在するかどうかを確認するにはどうすればよいですか?

解決策:

Java では、equals メソッドを使用してオブジェクトが等しいかどうかを比較できます。ただし、C ではオブジェクトに対するこのようなメソッドはサポートされていません。代わりに、 std::find 関数を使用して特定の要素を検索できます。

Foo array[10];
... // Initialize the array

// std::find returns an iterator pointing to the found element or the end of the range
Foo* foo = std::find(std::begin(array), std::end(array), someObject);

if (foo != std::end(array)) {
    // Element found
    std::cerr << "Found at position " << std::distance(array, foo) << std::endl;
} else {
    // Element not found
    std::cerr << "Not found" << std::endl;
}

説明:

  • std::begin および std ::end は配列の先頭と末尾に反復子を提供します。
  • std::find は配列を反復処理し、operator== メソッドを使用して各要素を someObject と比較します。
  • 要素の場合要素が見つかると、std::find はそれを指す反復子を返し、プログラムは見つかった要素の位置を出力します。
  • 要素が見つからない場合、std::find は要素の終わりを指す反復子を返します。配列。std::begin によって返される反復子 (配列の先頭) と等しくありません。この場合、プログラムは「見つかりません」と出力します。

以上がC 配列に要素が存在するかどうかを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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