Skip to content

angelamcosta/libft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Libft

badge

anlima's 42 Libft Score

GitHub Language Count GitHub Top Language GitHub Contributors GitHub Last Commit wakatime

📖 Part 1 - Libc functions

This project is about coding a C library, understanding the way some functions work, implementing them and learning to use them. The project must be written in C and must be written in accordance with the Norm. The subject of the project can be found in this link.

THe libc functions are:

  • isalpha
  • isdigit
  • isalnum
  • isascii
  • isprint
  • strlen
  • memset
  • bzero
  • memcpy
  • memmove
  • strlcpy
  • strlcat
  • toupper
  • tolower
  • strchr
  • strrchr
  • strncmp
  • memchr
  • memcmp
  • strnstr
  • atoi

To implement the following functions, we will need to use malloc():

  • calloc
  • strdup

📖 Part 2 - Additional functions

In this second part, the functions are either not in the libc or are part of it but in a different form. Some of the following functions can be useful for writing the functions of Part 1.

  • 📗 ft_substr
  • 📗 ft_strjoin
  • 📗 ft_strtrim
  • 📗 ft_split
  • 📗 ft_itoa
  • 📗 ft_strmapi
  • 📗 ft_striteri
  • 📗 ft_putchar_fd
  • 📗 ft_putstr_fd
  • 📗 ft_putendl_fd
  • 📗 ft_putnbr_fd

🎉 Bonus Part

The bonus part will only be evaluated if the mandatory part is completed successfully.

  • 🌟 ft_lstnew
  • 🌟 ft_lstadd_front
  • 🌟 ft_lstsize
  • 🌟 ft_lstlast
  • 🌟 ft_lstadd_back
  • 🌟 ft_lstdelone
  • 🌟 ft_lstclear
  • 🌟 ft_lstiter
  • 🌟 ft_lstmap

📚 Resources

In addition to the functions mentioned above, the Libft library also provides a wide range of utility functions that can be useful in various programming tasks. Refer to the libft.h header file for the complete list of functions.

You can also refer to the man pages of the corresponding libc functions for more information on the behavior and usage of each function.

📝 License

This project is licensed under the MIT License. See the LICENSE file for more details.