Canalblog
Editer l'article Suivre ce blog Administration + Créer mon blog
Publicité
LINUX & OPEN SOURCE
20 janvier 2009

Fonctions de manipulation des chaines avec allocation dynamique de la mémoire

Voici une série de fonctions d'affectation de chaîne, de concaténation, d'insertion, de substitution... qui offrent l'avantage d'allouer automatiquement la mémoire qui est nécessaire.

Le programme à télécharger (fonctions et exemples) est ici: dynamic.c

Listes des fonctions disponibles:

/*retourne la lg de l'element ou 0 en fin de liste,
retourne l'element extrait et l'adresse de l'element suivant
delimiter devra contenir le caractere qui delimite chaque element*/

int foreachstrdyn(char **element,char **pointeur,char *delimiter);

/*copie entree dans resultat - resultat*/
int strcpydyn(char **resultat,char *entree);

/*ajoute entree a la fin de resultat*/
int strcatdyn(char **resultat,char *entree);

/*ajoute entree a la debut de resultat*/
int strcatdyn(char **resultat,char *entree);

/*ajoute entree a position dans resultat, compte a partir de 0*/
int strinsndyn(char **resultat,char *entree,int position);

/*efface n caracteres a partir de position*/
int strposdeln(char **resultat,int position,int lg);

/*cherche a partir de la gauche et remplace ancien par nouveau*/
int strreplacedyn(char **resultat,char *nouveau,char *ancien);

/*cherche a partir de la droite et remplace ancien par nouveau*/
int strreplacerdyn(char **resultat,char *nouveau,char *ancien);

/*cherche et remplace ancien par nouveau a partir de la position index_init
et retourne la position d'ancien - utile pour traiter toute la chaine*/

int strreplaceidyn(char **resultat,char *nouveau,char *ancien,int index_init);


Note: Déclarer resultat, element, pointeur ainsi:             char *resultat, *element, *pointeur;

et passer l'adresse des pointeurs aux fonctions ainsi:   &resultat, &element, &pointeur


Publicité
Publicité
Commentaires
LINUX & OPEN SOURCE
Publicité
Archives
Publicité