This project entails creating a library of 40+ functions from scratch, many of which are clones of already existing functions. This project is a good way to master the basics of C, while also beginning to learn some more complex concepts for beginners, such as linked lists.
- ft_isalpha(): Checks if a character is alphabetical.
- ft_isdigit(): Checks if a character is numerical.
- ft_isalnum(): Checks if a character is alphanumerical.
- ft_isascii(): Checks if a character is an ASCII value.
- ft_isprint(): Checks if a character is printable.
- ft_strlen(): Counts the length of a string.
- ft_memset(): Sets a block of memory to a specified value.
- ft_bzero(): Sets a block of memory to zero.
- ft_memcpy(): Copies memory from source to destination.
- ft_memmove(): Copies memory safely, handling overlaps.
- ft_strlcpy(): Copies a string to a buffer with size limit.
- ft_strlcat(): Concatenates two strings with size limit.
- ft_toupper(): Converts a character to uppercase.
- ft_tolower(): Converts a character to lowercase.
- ft_strchr(): Finds the first occurrence of a character in a string.
- ft_strrchr(): Finds the last occurrence of a character in a string.
- ft_strncmp(): Compares two strings up to a specified length.
- ft_memchr(): Searches for a character in a block of memory.
- ft_memcmp(): Compares two blocks of memory.
- ft_strnstr(): Searches for a substring within a string up to a specified length.
- ft_atoi(): Converts a string to an integer.
- ft_calloc(): Allocates and zeroes memory.
- ft_strdup(): Duplicates a string.
- ft_substr(): Creates a substring from a given string.
- ft_strjoin(): Joins two strings into a new string.
- ft_strtrim(): Trims characters from the start and end of a string.
- ft_split(): Splits a string into an array of strings by a delimiter.
- ft_itoa(): Converts an integer to a string.
- ft_strmapi(): Applies a function to each character of a string to create a new string.
- ft_striteri(): Applies a function to each character of a string.
- ft_putchar_fd(): Writes a character to a file descriptor.
- ft_putstr_fd(): Writes a string to a file descriptor.
- ft_putendl_fd(): Writes a string followed by a newline to a file descriptor.
- ft_putnbr_fd(): Writes an integer to a file descriptor.
- ft_lstnew(): Creates a new list node.
- ft_lstadd_front(): Adds a node to the front of the list.
- ft_lstsize(): Returns the number of nodes in a list.
- ft_lstlast(): Returns the last node of the list.
- ft_lstadd_back(): Adds a node to the end of the list.
- ft_lstdelone(): Deletes a node and frees its content.
- ft_lstclear(): Deletes and frees the entire list.
- ft_lstiter(): Applies a function to each node's content.
- ft_lstmap(): Creates a new list by applying a function to each node's content.
These GitHub repositories provide testing frameworks for verifying the correctness of your implementation of the libft functions.
- Libft War Machine: A forked repository of libftest by jtoty, which is a comprehensive tester for the libft project.
- libftTester: A tester for the libft project of the 42 school.
- libft-unit-test: Another unit test framework for the libft project.
- Libftest: The original tester for the libft project created by jtoty.
These testers will help ensure that your implementation of the libft functions is correct and meets the expected standards.