SIMPLE TRAITEMENT DE CHAINE EN C

Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 - 5 août 2008 à 14:57
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 5 août 2008 à 19:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47505-simple-traitement-de-chaine-en-c

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
5 août 2008 à 19:01
FLOFLOO >

tout ceci relève de l'exercice perso qu'il convient de conserver chez soi, il n'y a rien qui puisse servir d'exemple et donc aucune raison de publier cela.

Exemple:
void LTrim(char *psz, char sep)
{
char *c = psz;
while(*c == sep) c++;
if(c > psz) {
while(*psz = *c) {psz++; c++;}
}
}
Pas besoin de "if(xxx == true)" pas plus que de strlen ni autre ineptie.
Si tu as des questions sur l'optimisation d'une fonction, il y a le forum pour cela.

J'ENLEVERAI DEMAIN AU PLUS TARD, CE SERA LA DEUXIEME FOIS ET J'ESPERE NE PAS AVOIR LA 3eme VERSION.
SebLinck Messages postés 212 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 23 juin 2011
5 août 2008 à 16:24
Salut,

Pourquoi utiliser des string pour traiter des char* ?
cs_flofloo Messages postés 45 Date d'inscription samedi 5 juin 2004 Statut Membre Dernière intervention 16 mars 2009
5 août 2008 à 15:11
ok merci pour la critik "neo_fr" je ne savais pas
Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 2
5 août 2008 à 14:57
C'est pas du tout optimiser tt ca, on ne met jamais de strlen dans une boucle sinon a chaque tour la longueur de la chaine est recalculer ce qui totalement inutile, met un seul strlen avant de rentrer dans ta boucle et c'est tout..

Neo_Fr
Rejoignez-nous