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 && make
2. 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