My Printf

Thibaut CORNOLTI

1/7

I) Objectif et gestion du projet

Le Printf  ?

Permet d'afficher dans la sortie standard...

%d, %i, %u, %o, %x ...un entier sous différentes bases
%s ...une chaîne
%c ...un caractère
%p ...un pointeur
​%e ​...un rationnel en écriture scientifique
%b ...un entier en binaire (bonus)

2/7

II) Organisation

Recherche sur le printf

Implémentation des flags de base

Implémentation des modificateurs

Rendu

3/7

III) FONCTIONNEMENT

Parsing de la chaîne

Gestion d'erreur

Mise dans un structure

Lecture de la structure

Calcul des modificateurs

Application des modificateurs

Affichage du résultat

4/7

IV) Problèmes rencontrés

      & solutions 

  • Calcul des longueurs et des précisions

Nombreux tests

Main de test

  • Gestion du temps (nombreux projets)

Planning

Deadline

5/7

V) Bonus

- Modificateur " : " :

Gère les SGR (Select Graphic Rendition)

Exemple :

my_printf("Salut, %:31;42s !\n", "Hey");
my_printf("Salut, %:*s !\n", "32;1", "Hey");

- Modificateurs sur %b et %S

x Couleur
0 Noir
1 Rouge
2 Vert
3 Jaune
4 Bleu
5 Magenta
6 Cyan
7 Blanc
Fonction
0 Reset
1 Gras
2 Light
3 Italic
4 Souligné
5 Clignote -
6 Clignote +
7 Négatif
9 Barré
1x Police
3x Couleur
4x Font

6/7

- Gestion du %e avec arrondies

ANY

QUESTION

?

7/7

Made with Slides.com