42 Yerevan Printf
For further information about 42cursus and its projects, please refer to 42cursus repo.
This project is pretty straight-forward. You will implement your own printf. You will mainly learn how to use variadic arguments.
For detailed information, refer to the subject of this project.
🚀 TLDR: This project consists of coding a library that contains a simplified version
of the printf function.
Note
Because of 42 School norm requirements:
- Each function can't have more than 25 lines of code.
- All variables are declared and aligned at the top of each function.
- Project should be created just with allowed functions otherwise it's cheating.
These specifiers are supported by my printf implementation.
| Specifier | Short Description |
|---|---|
| %c | Print a single character. |
| %s | Print a string of characters. |
| %p | The void * pointer argument is printed in hexadecimal. |
| %d | Print a decimal (base 10) number. |
| %i | Print an integer in base 10. |
| %u | Print an unsigned decimal (base 10) number. |
| %x | Print a number in hexadecimal (base 16), with lowercase. |
| %X | Print a number in hexadecimal (base 16), with uppercase. |
| %% | Print a percent sign. |
The library is written in C language and thus needs the gcc compiler and some standard C libraries to run.
1. Compiling the library
To compile the library, run:
$ cd path/to/printf && make2. Using it in your code
To use the library functions in your code, simply include its header:
#include "ft_printf.h"and, when compiling your code, add the required flags:
-lftprintf -L path/to/libftprintf.a -I path/to/ft_printf.h