Printf() is actually a more advanced function than obvious at first glance. In this video I will show you how to write your own implementation, completely from scratch, and without any libraries - not even the standard C libraries.
To be able to solve this task, one must code own versions of the utility functions strlen, puts, putchar, itoa and others, as well as writing your own va_arg implementation in order to handle variable-length function parameters.