The aim of this project is to code a C library regrouping usual functions that you’ll be allowed to use in all your other projects.
C programming can be very tedious when one doesn’t have access to those highly useful standard functions. This project makes you to take the time to re-write those functions, understand them, and learn to use them. This library will help you for all your future C projects. Through this project, we also give you the opportunity to expand the list of functions with your own. Take the time to expand your libft throughout the year.
125 / 100
The aim of this project is to write a function that will allow you to read a line ending with a newline character from a file descriptor.
This project will not only allow you to add a very convenient function to your collection, but it will also allow you to learn a highly interesting new concept in C programming: static variables. You will also gain a deeper understanding of allocations, whether they happen on the stack memory or in the heap memory, the manipulation and the life cycle of a buffer, the unexpected complexity implied in the use of one or many static variables.
123 / 100
Recode of the libc’s printf function.
The versatility of the printf function in C represents a great exercise in programming for us. This project is of moderate difficulty. It will enable you to discover variadic functions in C in a particularly relevant context as well as learn about a great example of a basic “dispatcher” in C via the use of an array of function’s pointers. The key to a successful ft_printf is a well-structured and good extensible code. This is because as time goes by, you will be more and more tempted to continue to extend your ft_printf, making your life easier for your future projects. So take your time to code properly while keeping in mind that you will have to read again your code in a few weeks or a few months to extend its functionality according to your needs. It would be a shame not to being able to do it because your can’t read your own work. What do you think?
109 / 100
Font and background colors; Bold, underline and reverse colors; Binary print; Wildcard *; fd_printf; modification z - t_size and j - intmax_t.