/*!\file functionAdd.c * * \author SOUPLET Antoine * \version 1.0 * \date 10-01-2012 * * \brief Fichier contenant les fonctions additionnelles ou annexes au programme * */ #include "functionAdd.h" //Supprime d'une chaine de caractères tous les caractères identiques à celui passé en paramètre char* removeChar(char* pc_string, char c_char) { int i_read;//entier représentant la position du caractère en cours de lecture int i_write;//entier représentant la position du caractère en cours d'écriture i_read = 0; i_write = 0; while (pc_string[i_read] != '\0') { if (pc_string[i_read] != c_char) { pc_string[i_write] = pc_string[i_read]; i_write++; } i_read++; } pc_string[i_write] = '\0'; return(pc_string); } //Teste si un entier ou un char (pas de typage fort) est entre deux entier int isIntegerBetween(char c_char, int i_min, int i_max) { int i;//variable de boucle int i_temp;//entier utilisé pour stocker l'entier i_min if(i_min > i_max){ i_temp=i_min; i_min=i_max; i_max=i_temp; } for (i = i_min; i <= i_max; i++) { if(i==c_char-'0') { return (1); } } return (0); } //Redéfinition du malloc afin de tester automatiquement si l'allocation mémoire est un échec, auquel cas on quitte le programme void* myMalloc(size_t siz_size) { void* pvoid_element;//Elément auquel on souhaite alloué la mémoire pvoid_element=malloc(siz_size); if(pvoid_element==NULL) { printf("Erreur d'allocation mémoire\n"); exit(EXIT_FAILURE); } return(pvoid_element); }