Maison >développement back-end >C++ >Comment puis-je imprimer efficacement des listes séparées par des virgules en C ?

Comment puis-je imprimer efficacement des listes séparées par des virgules en C ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-25 02:49:13838parcourir

How Can I Efficiently Print Comma-Separated Lists in C  ?

Impression de listes avec séparation par des virgules en C

Malgré la maîtrise d'autres langages, la tâche d'imprimer une liste d'éléments séparés par des virgules peut être intimidante en C . Cet article fournit une solution complète à ce problème.

L'extrait de code présenté implique de parcourir un ensemble de chaînes tout en ajoutant une virgule à chaque élément. Cependant, la fonctionnalité souhaitée nécessite la suppression de la virgule finale. Après avoir expérimenté diverses approches, une solution élégante émerge.

Itération infixe avec délimiteur :

Un itérateur infixe, un type d'itérateur spécialisé, intègre de manière transparente un délimiteur entre les éléments. . Cette technique garantit que le premier élément est imprimé sans délimiteur précédent, tandis que les éléments suivants sont séparés comme vous le souhaitez.

L'intégration d'un itérateur infixe dans votre code est simple :

#include "infix_iterator.h"

// ...
std::copy(keywords.begin(), keywords.end(), infix_iterator(out, ","));

Cette approche exploite la fonctionnalité de l'itérateur infixe pour gérer l'insertion de virgules, éliminant ainsi le besoin de manipulation manuelle des chaînes ou de vérifications conditionnelles supplémentaires. En incorporant cette technique, le résultat souhaité d'une liste séparée par des virgules peut être obtenu en C avec à la fois précision et efficacité.

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