Skip to content

JNTHNN/Ft_printf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ft_printf

ft_printf est une réimplémentation de la fonction standard printf. Le projet consiste à coder une version simplifiée mais fonctionnelle, capable de gérer plusieurs types et spécificateurs de format.


🎯 Objectif du projet

  • Comprendre et manipuler les fonctions variadiques en C.
  • ImplĂ©menter des mĂ©canismes complexes comme le parsing de spĂ©cificateurs de format.
  • Apprendre Ă  produire des sorties formatĂ©es tout en optimisant la gestion de la mĂ©moire et des performances.

🛠️ Compétences clés

  • Fonctions variadiques : utilisation des macros va_start, va_arg, et va_end pour traiter un nombre variable d’arguments.
  • Parsing des spĂ©cificateurs : comprĂ©hension et implĂ©mentation des formats comme %d, %s, %c, etc.
  • Manipulation avancĂ©e des chaĂ®nes : gestion de l’allocation et de la concatĂ©nation de donnĂ©es dynamiques.
  • Optimisation : Ă©crire un code efficace et robuste pour minimiser l’utilisation des ressources.

🚀 Usage

La fonction se comporte comme suit :

int ft_printf(const char *format, ...);
  • format : une chaĂ®ne contenant du texte ordinaire et des spĂ©cificateurs de format (ex. : %d, %s, %x).
  • Retourne :
    • Le nombre total de caractères imprimĂ©s (en excluant le caractère nul final).

Exemples d’utilisation :

ft_printf("Hello, %s!\n", "world"); // Affiche "Hello, world!"
ft_printf("Valeur : %d\n", 42);     // Affiche "Valeur : 42"

📚 Ressources utilisées

  • Manipulation des fonctions variadiques avec stdarg.h.
  • Utilisation de write pour produire des sorties.
  • Gestion des chaĂ®nes de caractères avec des fonctions maison (pas de bibliothèque standard).

🌟 Ce que j’ai appris

Ce projet m’a permis de développer une compréhension approfondie des points suivants :

  • La mĂ©canique interne de printf et la manipulation des arguments multiples.
  • La gestion et la robustesse des sorties formatĂ©es en C.
  • L’écriture d’un code propre, modulaire et performant.

🖥️ Résultats finaux

  • Une fonction ft_printf fonctionnelle, gĂ©rant plusieurs types et formats courants (%c, %s, %d, %x, etc.).
  • Une maĂ®trise accrue des concepts avancĂ©s en C.

About

19's Project - ft_printf / Variadic Functions - Formatting - Output

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published