Premier projet de l'ecole 42 : coder une librairie libft.a
à l'identique pour les fonctions de la premiere partie et en suivant les recommendations dans la seconde partie.
Consulter le man
pour la description des fonctions suivantes :
- ft_memset
- ft_bzero
- ft_memcpy
- ft_memccpy
- ft_memmove
- ft_memchr
- ft_memcmp
- ft_strlen
- ft_strdup
- ft_strcpy
- ft_strncpy
- ft_strcat
- ft_strncat
- ft_strlcat
- ft_strchr
- ft_strrchr
- ft_strstrs
- ft_strnstr
- ft_strcmp
- ft_strncmp
- ft_atoi
- ft_isalpha
- ft_isdigit
- ft_isalnum
- ft_isascii
- ft_isprint
- ft_toupper
- ft_tolower
Alloue avec
malloc(3)
et retourne une zone de memoire "fraiche". La memoire allouee est intialisee a 0. Si l'allocation echoue, la fonction renvoieNULL
.
Prend en parametre l’adresse d’un pointeur dont la zone pointee doit etre liberee avec
free(3)
, puis le pointeur est mis aNULL
.
Alloue avec
malloc(3)
et retourne une chaine de caractere “fraiche” terminee par un’\0’
. Chaque caractere de la chaine est initialise a’\0’
. Si l’allocation echoue, la fonction renvoieNULL
.
Prend en parametre l’adresse d’une chaine de caracteres qui doit etre liberee avec
free(3)
et son pointeur mis aNULL
.
Assigne la valeur
’\0’
a tous les caracteres de la chaine passee en parametre.
Applique la fonction
f
a chaque caractere de la chaine de caracteres passee en parametre. Chaque caractere est passe par adresse a la fonctionf
afin de pouvoir être modifie si necessaire.
Applique la fonction
f
a chaque caractere de la chaine de caracteres passee en parametre en precisant son index en premier argument. Chaque caractere est passe par adresse a la fonctionf
afin de pouvoir etre modifie si necessaire.
Applique la fonction
f
a chaque caractere de la chaine de caracteres passee en parametre pour creer une nouvelle chaine “fraiche” avecmalloc(3)
resultant des applications successives def
.
Applique la fonction
f
a chaque caractere de la chaine de caracteres passee en parametre en precisant son index pour creer une nouvelle chaine “fraiche” avecmalloc(3)
resultant des applications successives def
.
Compare lexicographiquement s1 et s2. Si les deux chaines sont egales, la fonction retourne 1, ou 0 sinon.
Compare lexicographiquement s1 et s2 jusqu’a n caracteres maximum ou bien qu’un
’\0’
ait ete rencontre. Si les deux chaines sont egales, la fonction retourne 1, ou 0 sinon.
Alloue avec
malloc(3)
et retourne la copie "fraiche" d'un troncon de la chaine de caracteres passee en parametre. Le troncon commence a l'indexstart
et a pour longueurlen
. Sistart
etlen
ne designent pas un troncon de chaine valide, le comportement est indetermine. Si l'allocation echoue, la fonction renvoieNULL
.
Alloue avec
malloc(3)
et retourne une chaine de caracteres "fraiche" terminee pas un'\0'
resultant de la concatenation des1
ets2
. Si l'allocation echoue, la fonction renvoieNULL
.
Alloue avec
malloc(3)
et retourne une copie de la chaine passee en parametre sans les espaces blancs au debut et a la fin de cette chaine. On considere comme des espaces blancs les caracteres' '
,'\n'
et'\t'
. Sis
ne contient pas d'espaces blancs au debut ou a la fin, la fonction renvoie une copie des
. Si l'allocation echoue, la fonction renvoieNULL
.
Alloue avec
malloc(3)
et retourne un tableau de chaines de caracteres "fraiches" (toutes terminees par un'\0'
, le tableau egalement donc) resultant de la decoupe des
selon le caracterec
. Si l'allocation echoue, la fonction retourneNULL
.
Alloue avec
malloc(3)
et retourne une chaine de caracteres "fraiche" terminee par un'\0'
representatnt l'entiern
passe en parametre. Les nombres negatifs sont geres. Si l'allocation echoue, la fonction renvoieNULL
.
Affiche le caractere
c
sur la sortie standard.
Affiche la chaine
s
sur la sortir standard.
Affiche la chaine
s
sur la sortie standard suivi d'un'\n'
.
Affiche l'entier
n
sur la sortie standard.
Ecrit le caractere
c
sur le descripteur de fichierfd
.
Ecrit la chaine
s
sur le descripteur de fichierfd
.
Ecrit la chaine
s
sur le descripteur de fichierfd
suivi d'un'\n'
.
Ecrit l'entier
n
sur le descripteur de fichierfd
.
Alloue avec
malloc(3)
et retourne un maillon “frais”. Les champscontent
etcontent_size
du nouveau maillon sont initialises par copie des parametres de la fonction. Si le parametrecontent
est nul, le champscontent
est initialise aNULL
et le champscontent_size
est initialise a 0 quelque soit la valeur du parametrecontent_size
. Le champnext
est initialise aNULL
. Si l’allocation echoue, la fonction renvoieNULL
.
Prend en parametre l’adresse d’un pointeur sur un maillon et libere la memoire du contenu de ce maillon avec la fonction
del
passee en parametre puis libere la memoire du maillon en lui meme avecfree(3)
. La memoire du champnext
ne doit en aucun cas être liberee. Pour terminer, le pointeur sur le maillon maintenant libere doit etre mis aNULL
(de maniere similaire à la fonction ft_memdel).
Prend en parametre l’adresse d’un pointeur sur un maillon et libere la memoire de ce maillon et celle de tous ses successeurs l’un apres l’autre avec
del
etfree(3)
. Pour terminer, le pointeur sur le premier maillon maintenant libere doit etre mis àNULL
(de maniere similaire à la fonction ft_memdel).
Ajoute l'element
new
en tete de la liste.
Parcourt la liste
lst
en appliquant a chaque maillon la fonctionf
.
Parcourt la liste lst en appliquant à chaque maillon la fonction f et cree une nouvelle liste “fraiche” avec
malloc(3)
resultant des applications successives. Si une allocation echoue, la fonction renvoieNULL
.
Retourne vrai si le caractere
c
passe est en majuscule. Ne fonctionne qu'avec les caracteres ASCII.
Retourne vrai si le caractere
c
passe est en minuscule. Ne fonctionne qu'avec les caracteres ASCII.
Passe toute la chaine de caractere en minuscule.
Passe toute la chaine de caractere en majuscule.
Initialise toute la chaine de caractere, terminee par un
'\0'
, avec le caractere passe en parametre.
Cree une nouvelle chaine de caractere initialisee avec le caractere passe en parametre et ajoute un
'\0'
a la fin.
int get_next_line(int const fd, char **line)
int ft_count_words(char *s, char c)
long int ft_strtol(char *line)
Utilise la recursivite pour le calcul.
float ft_power(int nb, int exp)
Ajoute un nouvel element
new
en fin de listelist
.void ft_lstappend(t_list *list, t_list *new)