Maison >développement back-end >C++ >Comment `getline()` peut-il être utilisé pour séparer les chaînes séparées par des virgules en C ?

Comment `getline()` peut-il être utilisé pour séparer les chaînes séparées par des virgules en C ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-26 07:13:101023parcourir

How Can `getline()` Be Used to Separate Comma-Separated Strings in C  ?

Exploiter getline() pour la séparation des chaînes séparées par des virgules

Pour séparer les chaînes séparées par des virgules en C , stringstream seul peut ne pas suffire. Cet article présente une approche alternative utilisant la méthode getline() pour obtenir la séparation souhaitée.

Dans le code donné, le stringstream::>> L'opérateur sépare les chaînes en fonction des espaces. Pour gérer les virgules, vous pouvez incorporer getline() à partir du fichier bibliothèque. Cette méthode prend un objet istream, une variable chaîne pour stocker le jeton extrait et un caractère délimiteur.

Considérez la version modifiée suivante du code :

#include <iostream>
#include <sstream>

int main() {
  std::string input = "abc,def,ghi";
  std::istringstream ss(input);
  std::string token;

  while (std::getline(ss, token, ',')) {
    std::cout << token << '\n';
  }

  return 0;
}

Dans ce code, nous utilisez getline() pour extraire les jetons du flux de chaînes en spécifiant une virgule comme délimiteur. Le résultat est :

abc
def
ghi

En exploitant les capacités de getline(), vous pouvez séparer efficacement les chaînes par n'importe quel délimiteur spécifique, y compris les virgules. Cette approche offre une plus grande flexibilité et personnalisation pour les tâches de manipulation de chaînes.

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