42 PISCINE — C

Guía de Repaso
Examen Final

// tipos de retorno

Tipos de retorno

La palabra antes del nombre de la función indica qué tipo de dato devuelve.

void — no devuelve nada

void    ft_putchar(char c)
{
    write(1, &c, 1);
    // No hay return con valor
}

int — devuelve número entero

int     ft_strlen(char *str)
{
    int i;

    i = 0;
    while (str[i])
        i++;
    return (i);
}

char — devuelve un solo carácter

char    ft_toupper(char c)
{
    if (c >= 'a' && c <= 'z')
        return (c - 32);
    return (c);
}

char * — devuelve puntero a cadena

char    *ft_strdup(char *src)
{
    // ...
    return (copy); // dirección de memoria
}

char ** — devuelve array de strings

char    **ft_split(char *str, char *charset)
{
    // ...
    return (array); // array de cadenas
}

int * — devuelve array de enteros

int     *ft_range(int min, int max)
{
    // ...
    return (array); // array de ints
}

static — solo visible en ese archivo

static int  ft_isdigit(char c)
{
    return (c >= '0' && c <= '9');
}
// Solo usable dentro del mismo .c

Tabla resumen completa

TipoDevuelveEjemplo típico
voidNadaft_putchar, ft_putstr
intNúmero enteroft_strlen, ft_is_prime
charUn carácterft_toupper, ft_tolower
char *Una cadenaft_strdup, ft_strjoin
char **Array de cadenasft_split
int *Array de enterosft_range
static + tipoIgual al tipo baseFunciones auxiliares

Regla de oro

💡 REGLA DE ORO

Lo que hay después del return() debe coincidir con el tipo declarado.

int   funcion(void)  →  return (42);      
char  funcion(void)  →  return ('a');    
void  funcion(void)  →  return ;         ✅ (sin valor)
char *funcion(void)  →  return (ptr);    ✅ (puntero)
int  *funcion(void)  →  return (array);  ✅ (puntero a int)
⚠ RECUERDA EN EL EXAMEN

Sin IA, sin internet, hoja en blanco. Entrena tu razonamiento ahora para que fluya solo cuando llegue el momento.