dpetrosy / 42-Printf

This project aims to code a custom implementation of the C printf function.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

Printf Project

42 Yerevan Printf
For further information about 42cursus and its projects, please refer to 42cursus repo.


πŸ“œ About Project

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.

πŸ“‘ Supported Specifiers

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.

πŸ‘¨β€πŸ’» Usage

Requirements

The library is written in C language and thus needs the gcc compiler and some standard C libraries to run.

Instructions

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

About

This project aims to code a custom implementation of the C printf function.

License:MIT License


Languages

Language:C 89.7%Language:Makefile 10.3%