Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/raveriss/ft_printf
A custom implementation of the printf function in C that handles common format conversions with varied argument handling. Carried out as part of my studies at school 42, this project embodies my quest for mastery in C programming and high quality standards.
https://github.com/raveriss/ft_printf
42school c-programming coding-education printf-implementation software-quality variadic-functions
Last synced: 24 days ago
JSON representation
A custom implementation of the printf function in C that handles common format conversions with varied argument handling. Carried out as part of my studies at school 42, this project embodies my quest for mastery in C programming and high quality standards.
- Host: GitHub
- URL: https://github.com/raveriss/ft_printf
- Owner: raveriss
- Created: 2024-03-18T23:00:08.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-03-18T23:33:27.000Z (11 months ago)
- Last Synced: 2024-11-14T05:19:32.801Z (3 months ago)
- Topics: 42school, c-programming, coding-education, printf-implementation, software-quality, variadic-functions
- Language: C
- Homepage:
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projet ft_printf
![]()
## Description
Ce projet vise à recoder la fonction printf() de la libc. L'objectif est d'apprendre à utiliser une variété d'arguments et de maîtriser le traitement de différents formats de données. C'est une excellente occasion d'améliorer vos compétences en programmation C, en mettant en œuvre une fonction complexe et polyvalente.## Tableau des Composants du Projet
| Fichier | Description | Responsabilité | Statut |
|-------------------|-------------------------------------------------------|-----------------------------------------|-----------|
| `ft_printf.c` | Le cœur de l'implémentation de `ft_printf` | Traitement des formats et affichage | Complet |
| `parse_format.c` | Parse les spécificateurs de format | Analyse de la chaîne de format | Complet |
| `print_char.c` | Fonctions pour imprimer des caractères et des chaînes | Gestion de `%c` et `%s` | Complet |
| `print_numbers.c` | Fonctions pour imprimer des nombres | Gestion de `%d`, `%i`, `%u`, `%x`, `%X` | Complet |
| `utils.c` | Fonctions utilitaires pour l'implémentation | Diverses aides pour l'impression | Complet |
| `Makefile` | Fichier pour compiler le projet et créer la librairie | Compilation | Complet |## Installation et Compilation
```
git clone [email protected]:raveriss/ft_printf.git
cd ft_printf
make
```## Utilisation
Incluez ft_printf.h dans votre projet et liez avec libftprintf.a lors de la compilation. Utilisez ft_printf comme vous utiliseriez printf.## Options
Ce projet imite le comportement de printf et supporte les conversions cspdiuxX%.## Caractéristiques
Gestion variée d'arguments.
Supporte les conversions principales.
Absence de fuites de mémoire et conformité avec les normes de l'école 42.
Fonctions externes autorisées
malloc
free
write
va_start, va_arg, va_copy, va_end## Ressources et Remerciements
- Tutoriel sur `printf`: [YouTube - Glootie](https://www.youtube.com/watch?v=xgK-U1Jj92Q&ab_channel=Glootie)
- Guide sur les fonctions à nombre variable d'arguments: [Blog Perhonen](https://perhonen.fr/blog/2016/01/faire-fonction-nombre-arguments-variable-en-c-2701)