Maison >développement back-end >C++ >Comment puis-je parcourir des caractères de chaîne en C ?

Comment puis-je parcourir des caractères de chaîne en C ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-30 02:40:09199parcourir

How Can I Iterate Over String Characters in C  ?

Itération sur des caractères de chaîne en C

Lorsque vous travaillez avec des chaînes, il est souvent nécessaire de parcourir chaque caractère individuellement. Voici comment y parvenir en C :

1. Boucle For basée sur une plage (C moderne)

std::string str = "...";
for (char& c : str) {
    // Operations on c here
}

Cette méthode utilise la boucle basée sur la plage for, qui fournit un moyen concis et sûr de type pour parcourir les éléments de tout conteneur prenant en charge les méthodes start() et end().

2. Boucle basée sur un itérateur

std::string str = "...";
for (std::string::iterator it = str.begin(); it != str.end(); ++it) {
    // Operations on *it here (dereference the iterator)
}

Cette méthode utilise des itérateurs pour parcourir le conteneur. Les itérateurs offrent un moyen flexible et de bas niveau de naviguer dans la structure de données sous-jacente.

3. Boucle For traditionnelle

std::string str = "...";
for (std::string::size_type i = 0; i < str.size(); ++i) {
    // Operations on str[i] here (access the character directly)
}

Il s'agit de l'approche classique de la boucle For, où vous contrôlez l'index et accédez directement aux caractères à l'aide de l'opérateur []. Pour la plupart des cas d'utilisation, la boucle for basée sur une plage est préférée en raison de sa simplicité et de sa lisibilité.

4. Chaînes de style C à terminaison nulle

Pour les tableaux de caractères à terminaison nulle à l'ancienne, utilisez la boucle suivante :

char str[] = "...";
char* it = str;
while (*it) {
    // Operations on *it here (dereference pointer)
    ++it;
}

Dans ces approches, vous pouvez effectuer diverses opérations sur les caractères à l'intérieur de la boucle, comme la manipulation de chaînes, le comptage de caractères ou la recherche.

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