Este projeto é uma reimplementação da função printf da biblioteca padrão do C. Ele faz parte do currículo da 42 School e tem como objetivo aprofundar o entendimento de formatação de strings, gerenciamento de argumentos variádicos e manipulação de tipos.
Criar uma função ft_printf que reproduz o comportamento do printf, suportando os principais especificadores de formato e lidando com os argumentos de forma genérica.
A função suporta os seguintes conversores:
%c→ caractere%s→ string%p→ ponteiro%dou%i→ inteiros com sinal%u→ inteiros sem sinal%x→ hexadecimal minúsculo%X→ hexadecimal maiúsculo%%→ símbolo de porcentagem literal
| Arquivo | Descrição |
|---|---|
ft_printf.c |
Função principal que processa o texto formatado. |
ft_flags.c |
Encaminha os especificadores para os handlers. |
ft_format_*.c |
Handlers para cada tipo de formatação (c, s, id, p, x, u, X). |
ft_printf_utils.c |
Funções auxiliares (ex: putchar, putnum). |
ft_printf.h |
Cabeçalho com definições e protótipos. |
Makefile |
Arquivo de automação da build. |
Execute:
makeOu para recompilar:
make reE para limpar arquivos objeto:
make clean#include "ft_printf.h"
int main(void)
{
ft_printf("Hello %s! Valor: %d, Hex: %x\n", "mundo", 42, 42);
return (0);
}Você pode comparar com o printf padrão usando:
printf("Valor real: %d\n", 42);
ft_printf("Valor custom: %d\n", 42);Este projeto está licenciado sob os termos do arquivo LICENSE.
Projeto desenvolvido por [ngomes-t@student.42sp.org.br].