This project has been created as part of the 42 curriculum by yahiaAlmouie.
Libft is a custom C library developed as part of the 42 curriculum. This is my first project at 42, completed as part of Milestone 0. The project consists of reimplementing functions from the standard C library and creating additional utility functions for working with strings, memory, characters, and file descriptors.
The project is divided into three groups:
Reimplementations of standard C library functions:
ft_isalphaft_isdigitft_isalnumft_isasciift_isprintft_strlenft_memsetft_bzeroft_memcpyft_memmoveft_strchrft_strlcpyft_strrchrft_strlcatft_toupperft_tolowerft_strncmpft_memchrft_memcmpft_strnstrft_atoift_callocft_strdup
Additional utility functions implemented as part of the project:
ft_substrft_strjoinft_strtrimft_splitft_itoaft_strmapift_striterift_putchar_fdft_putstr_fdft_putendl_fdft_putnbr_fd
Functions for creating and manipulating singly linked lists:
ft_lstnewft_lstadd_frontft_lstsizeft_lstlastft_lstadd_backft_lstdeloneft_lstclearft_lstiterft_lstmap
The project uses a Makefile and is compiled with:
gcc -Wall -Wextra -WerrorTo compile the library:
makeThis creates the static library:
libft.a
makeCompiles the library.
make cleanRemoves all generated object files (.o).
make fcleanRemoves the object files and libft.a.
make reRemoves the generated files and recompiles the library from scratch.
- W3Schools
- CS50x course materials
- YouTube tutorials
AI was used as a learning aid to explain some complex C concepts and to help identify and correct parts of the code.
The code was written, tested, and debugged as part of my own learning process.