Bonjour,
J'ai une liste de mot qui commence tous par le mot 'Cat' et qui finissent par une virgule.
Je dois ne garder que le mot lui-même, quelle fonction dois-je utiliser?
Version imprimable
Bonjour,
J'ai une liste de mot qui commence tous par le mot 'Cat' et qui finissent par une virgule.
Je dois ne garder que le mot lui-même, quelle fonction dois-je utiliser?
Tu fait une copie de ta chaîne sans prendre en compte les 3 premiers caractères soit Cat.Citation:
Envoyé par claire_cartier
Si le format est:Citation:
Envoyé par claire_cartier
, une solution est:Code:CatXXX...XXX,
On récupère seulement "XXX...XXX".Code:
1
2
3
4
5
6 char mot[TAILLEMOT]; int taille; ... taille=strlen(mot)-4; /*3 lettres de "Cat" + 1 pour ','*/ memmove(mot,mot+3,taille); mot[taille]=0;
strncat(). Bien lire la doc...Citation:
Envoyé par claire_cartier
Ok ca marche presque..
Parce qu'Il ne me retire pas la virgule de la fin!
Et je ne comprends pas tres bien à koi correspondent les parametres de la fonction memmove.
Chez moi, le code fourni ôte la virgule. N'y aurait-il pas quelque chose d'autre après la virgule chez vous (un espace peut-être)?Citation:
Envoyé par claire_cartier
Pour memmove():
Citation:
DescriptionCode:void *memmove(void *dest, const void *src, size_t n);
Copies a block of n bytes.
memmove copies a block of n bytes from src to dest. Even when the source and destination blocks overlap, bytes in the overlapping locations are copied correctly.
Return Value
memmove returns dest.
C'est bon ca marrche!
Merci beaucoup pour votre aide