Maison >développement back-end >C++ >Comment analyser une chaîne délimitée par des virgules dans un tableau d'entiers à l'aide de std :: stringstream ?

Comment analyser une chaîne délimitée par des virgules dans un tableau d'entiers à l'aide de std :: stringstream ?

DDD
DDDoriginal
2024-12-19 17:10:131007parcourir

How to Parse a Comma-Delimited String into an Integer Array Using std::stringstream?

Analyse d'une chaîne délimitée par des virgules à l'aide de std::stringstream

Pour analyser une chaîne séparée par des virgules dans un tableau d'entiers, vous pouvez exploiter la puissance de std::stringstream. Voici un guide étape par étape sur la façon d'y parvenir :

  1. Instancier un objet Stringstream :

    std::stringstream ss(str);

    Cela crée un stringstream objet ss qui lit à partir de la chaîne séparée par des virgules str.

  2. Parcourir le flux :

    for (int i; ss >> i;) {
        // ...
    }

    Utilisez une boucle for pour extraire les nombres du flux de chaînes. Chaque itération tente de lire un entier i à partir de ss. En cas de succès, le caractère suivant dans le flux doit être une virgule.

  3. Vérifiez les virgules :

    if (ss.peek() == ',')
        ss.ignore();

    Après avoir extrait chaque numéro i , vérifiez si le caractère suivant du flux est une virgule. Si tel est le cas, supprimez-le en utilisant ignore().

  4. Stockez les nombres dans un tableau :

    vect.push_back(i);

    Ajoutez chaque numéro extrait i à un vecteur ou un tableau, tel que vect.

  5. Itérer et afficher Résultats :

    for (std::size_t i = 0; i <p>Enfin, parcourez le vecteur ou le tableau pour afficher ou utiliser les nombres analysés selon vos besoins.</p>

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