Maison  >  Article  >  développement back-end  >  Comment itérer des paires consécutives d'éléments sans séparateur supplémentaire en C ?

Comment itérer des paires consécutives d'éléments sans séparateur supplémentaire en C ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-27 07:13:02340parcourir

How to Iterate Consecutive Pairs of Elements without an Extra Separator in C  ?

Itération de paires consécutives d'éléments sans séparateur supplémentaire

Lors de l'itération sur une collection d'éléments à l'aide de boucles for basées sur des distances, les programmeurs rencontrent souvent le défi d'ajouter un séparateur entre des éléments consécutifs sans inclure de séparateur inutile après le dernier élément. Voici une solution C concise et moderne à ce problème :

L'extrait de code C 11ish suivant élimine le séparateur supplémentaire :

<code class="cpp">const auto separator = "YourSeparatorHere";
const auto* sep = "";
for (const auto& item : items) {
    std::cout << sep << item;
    sep = separator;
}</code>

En utilisant un pointeur vers une chaîne const, nous évitons les chaînes inutiles création et allocation de mémoire. Le pointeur sep est initialement défini sur une chaîne vide, supprimant efficacement le séparateur pour le premier élément.

Cette solution fournit un moyen concis et efficace de parcourir une collection tout en séparant les éléments consécutifs sans se soucier de la gestion des cas particuliers. du premier et du dernier élément. Cela permet aux programmeurs de se concentrer sur la logique de base sans être distraits par les détails de mise en œuvre.

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