Partager via


basic_string::find_first_of (STL Samples)

Illustre comment utiliser la fonction de bibliothèque de types (STL) Standard de basic_string : : find_first_of dans Visual C++.

size_type find_first_of(
   const basic_string& _X,
   size_type iPos = 0
);
size_type find_first_of(
   const element_type *_S,
   size_type iPos,
   size_type cElementsIn_S
);
size_type find_first_of(
   const element_type *_S,
   size_type iPos = 0
);
size_type find_first_of(
   element_type _C,
   size_type iPos = 0
);

Notes

[!REMARQUE]

Les noms de classes/paramètre dans le prototype ne correspondent pas à la version du fichier d'en-tête.certains ont été modifiés pour améliorer la lisibilité.

Les fonctions membres chaque recherche le premier élément (la position la minima) de la séquence contrôlée ou après aux iPos de position qui correspond à l'un des éléments dans l'opérande une séquence spécifié par les opérandes restants.S'il y parvient, il retourne la position.Sinon, la fonction retourne des npos.la position retournée est 0 (zéro) basé.La valeur de retour de npos est une valeur spéciale indiquant qu'aucun des éléments n'a été trouvé.

Exemple

// main.cpp
// compile with: /EHsc
//
// Functions:
//
//    string::find_first_of() - find the first instance in the
//         controlled string of any of the elements specified by the
//         parameters. The search begins at an optionally-supplied
//         position in the controlled string.

#include <string>
#include <iostream>

using namespace std ;

int main()
{
    string str1("Heartbeat");
    string str2("abcde");
    size_t iPos = 0;

    cout << "The string to search is '" << str1.c_str() << "'"
         << endl;

    // find the first instance in str1 of any characters in str2
    iPos = str1.find_first_of (str2, 0);  // 0 is default position

    cout << "Element in '" << str2.c_str() << "' found at position "
         << iPos << endl;

    // start looking in the third position...
    iPos = str1.find_first_of (str2, 2);

    cout << "Element in '" << str2.c_str() << "' found at position "
         << iPos << endl;

    // use an array of the element type as the set of elements to
    // search for; look for anything after the fourth position
    char achVowels[] = {'a', 'e', 'i', 'o', 'u'};
    iPos = str1.find_first_of (achVowels, 4, sizeof(achVowels));

    cout << "Element in '";
    for (int i = 0; i < sizeof (achVowels); i++)
        cout << achVowels[i];
    cout << "' found at position " << iPos << endl;

    // use a string literal to specify the set of elements
    char szVowels[] = "aeiou";
    iPos = str1.find_first_of (szVowels, 0);  // 0 is default position

    cout << "Element in '" << szVowels << "' found at position "
         << iPos << endl;

    // look for a specific character beginning in the third position
    iPos = str1.find_first_of ('e', 2);

    cout << "'e' found at position " << iPos << endl;
}

Sortie

The string to search is 'Heartbeat'
Element in 'abcde' found at position 1
Element in 'abcde' found at position 2
Element in 'aeiou' found at position 6
Element in 'aeiou' found at position 1
'e' found at position 6

Configuration requise

en-tête : <string>

Voir aussi

Concepts

Exemples de modèles Standard