In this project, we created our own printf function handling various cases
| File | Task |
|---|---|
| holberton.h | Header file containing all prototype functions and structs used in this project |
| _printf.c | The actual _printf function to print the string as well as whatever argument corresponds with each format specifier |
| print_functions.c | The file containing the printing functions called and pointed to by _printf.c |
| conversion_functions.c | The file containing the conversion functions called to and pointed to by _printf.c |
| Format Specifier | Data Type | Prototype Function |
|---|---|---|
| %c | char | print_char |
| %d | base 10 decimal number | print_int |
| %i | base 10 integer | print_int |
| %s | string/array of chars | print_str |
| %% | percent sign | print_per |
| %b | binary number | print_bin |
| %o | octal number | print_oct |
| %u | unsigned integer | print_u |
| %X | hexadecimal number (uppercase) | print_Xhexa |
| Function | Description |
|---|---|
| _printf | Prints a formatted string to standard output |
| _putchar | Prints a single character to standard output (the basis for all of our printing) |
| print_char | Prints to standard output the single character passed to _printf as an argument |
| print_int | Prints to standard output the base 10 number passed to _printf as an argument |
| print_str | Prints to standard output the string passed to _printf as an argument |
| print_per | Prints to standarad output a percent sign passed to _printf as an argument |
| print_bin | Converts a decimal number passed to _printf to a binary number and prints it to standard output |
| print_oct | Converts a decimal number passed to _printf to a octal number and prints it to standard output |
| print_u | Prints to standard output a number passed to _printf as an unsigned integer |
| print_Xhexa | Converts a decimal number passed to _printf to a hexadecimal number and prints it to standard output |
| *convert | Converts a number according to the base of that number (e.g. 2 for binary, 8 for octal, 16 for hexadecimal) |
Allison Weiner & Phu Truong