Question pour un "String" ;-))

nobody77 Messages postés 8 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 13 décembre 2004 - 24 févr. 2004 à 16:41
nobody77 Messages postés 8 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 13 décembre 2004 - 25 févr. 2004 à 09:56
Bonjour,
j'ai un tableau de caractéres qui contient des sauts de ligne "CR/LF".
Je voudrais faire une fonction qui me permettrait de lire les chaînes de caractère dans ce tableau une oar une (jusqu'au le "CR/LF").
si vous avez des idées, je suis preneur.
Merci

6 réponses

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
24 févr. 2004 à 18:12
Salut,
Ce genre de truc ca se fait souvent avec des pointeurs dans des boucles.
Comme ca je vois 2 methodes:
- tu colles des \0 a la place des \r et tu affiches chaque chaine (avec un pointeur au debut).
- tu copie chaque chaine dans un buffer, tu affiches le buffer et ainsi de suite...
0
nobody77 Messages postés 8 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 13 décembre 2004
24 févr. 2004 à 20:28
Hi,
peux-tu me traduire cela stp en instructions C/C++?
thanx
0
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
24 févr. 2004 à 20:31
Salut,
Je vais voir ce que je peux faire.
Tu as le droit de modifier le tableau de caractere initial ou pas ?
0
nobody77 Messages postés 8 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 13 décembre 2004
24 févr. 2004 à 22:33
oui biensûr
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
24 févr. 2004 à 23:05
Salut,

int fonction(char * tab, int size)
{
char * c = tab; // pointeur sur chaine
char * d = c; // pointeur pour mettre les \0
char * f = tab + size; // pointeur fin de tableau
while(d < f) {
while(*d != '\r' && *d) d++; // avance jusqu'au \r ou \0
*d++ = 0; // remplace le \r par \0
printf("%s\n", c); // affiche la chaine
if(d < f) c = d + 1; // avance le pointeur c jusqu'a la chaine suivante
else return 0;
}
return 0;
}
0
nobody77 Messages postés 8 Date d'inscription mercredi 12 novembre 2003 Statut Membre Dernière intervention 13 décembre 2004
25 févr. 2004 à 09:56
Merci
je vais tester ce code
0
Rejoignez-nous