Skip to content

ft_printf_h

Marcos edited this page Oct 6, 2024 · 1 revision

Este archivo de cabecera es esencial para el proyecto ft_printf. Define las funciones necesarias para manejar diferentes tipos de datos y realizar la impresión formateada.

Definición de la Cabecera

#ifndef FT_PRINTF_H
# define FT_PRINTF_H

El uso de #ifndef y #define es una protección para evitar que el archivo de cabecera sea incluido más de una vez, lo cual podría causar problemas durante la compilación.

Inclusión de Librerías

# include <stdarg.h>
# include <unistd.h>
  • <stdarg.h>: Esta librería es necesaria para manejar un número variable de argumentos en ft_printf, a través de las macros va_list, va_start, va_arg y va_end.
  • <unistd.h>: Esta librería es utilizada para realizar operaciones de escritura con la función write.

Funciones Declaradas

int ft_printf(const char *format, ...);

Esta es la función principal del proyecto. Recibe una cadena de formato y una lista variable de argumentos para imprimirlos en la salida estándar según el formato especificado.

Parámetros:

  • const char *format: La cadena de formato que especifica cómo se deben imprimir los argumentos.
  • ...: Lista variable de argumentos.

Retorno: Devuelve el número de caracteres impresos.


int ft_putchar(char c);

Imprime un solo carácter en la salida estándar.

Parámetros:

  • char c: El carácter a imprimir.

Retorno: Devuelve el número de caracteres impresos (siempre 1).


int ft_putstr(char *str);

Imprime una cadena de caracteres.

Parámetros:

  • char *str: La cadena a imprimir.

Retorno: Devuelve el número de caracteres impresos.


int ft_putnbr(int nb);

Imprime un número entero.

Parámetros:

  • int nb: El número entero a imprimir.

Retorno: Devuelve el número de caracteres impresos.


int ft_putunsigned(unsigned int nb);

Imprime un número entero sin signo.

Parámetros:

  • unsigned int nb: El número sin signo a imprimir.

Retorno: Devuelve el número de caracteres impresos.


int ft_puthex(unsigned int num, char format);

Imprime un número en formato hexadecimal. El parámetro format determina si se imprime en minúsculas ('x') o mayúsculas ('X').

Parámetros:

  • unsigned int num: El número a imprimir en hexadecimal.
  • char format: Especifica si la salida será en minúsculas o mayúsculas.

Retorno: Devuelve el número de caracteres impresos.


int ft_putptr(void *ptr);

Imprime una dirección de memoria en formato hexadecimal.

Parámetros:

  • void *ptr: La dirección de memoria a imprimir.

Retorno: Devuelve el número de caracteres impresos.

Finalización de la Cabecera

#endif

Esto cierra la directiva de preprocesador #ifndef, asegurando que el archivo de cabecera solo sea incluido una vez en la compilación.

Resumen

El archivo ft_printf.h es crucial para la implementación de las funciones necesarias para ft_printf. Proporciona las declaraciones de funciones para manejar diferentes tipos de datos (caracteres, cadenas, enteros, hexadecimales, punteros) y asegura que se puedan utilizar correctamente en otros archivos del proyecto.

Clone this wiki locally