Maison >développement back-end >C++ >Comment déterminer si un élément existe dans un tableau C ?

Comment déterminer si un élément existe dans un tableau C ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-10 00:03:03351parcourir

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

Détermination de la présence d'un élément dans un tableau (C)

Problème :
Comment vérifier si un élément existe dans un tableau C ?

Solution :

En Java, la méthode égale peut être utilisée pour comparer des objets pour vérifier leur égalité. Cependant, C ne prend pas en charge une telle méthode pour les objets. Au lieu de cela, la fonction std::find peut être utilisée pour rechercher un élément spécifique :

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;
}

Explication :

  • std::begin et std ::end fournit des itérateurs au début et à la fin du tableau.
  • std::find parcourt le tableau, en comparant chaque élément avec someObject à l'aide de la méthode Operator==.
  • Si l'élément est trouvé, std::find renvoie un itérateur pointant vers lui et le programme imprime la position de l'élément trouvé.
  • Si l'élément n'est pas trouvé, std::find renvoie un itérateur pointant vers la fin de le tableau, qui n'est pas égal à l'itérateur renvoyé par std::begin (le début du tableau). Dans ce cas, le programme imprime "Introuvable".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn