ft_strlcat.c

Esta función permite concatenar cierta cantidad de caracteres de una cadena a otra.

Enunciado

strlcat(3)

NOMBRE
    strlcat --> concatena una cantidad especifica de caracteres de una cadena a otra 
CABECERA
    size_t strlcat(char *dst, const char *src, size_t sz);
DESCRIPCIÓN
    Concatena `sz - 1` caracteres de la cadena de orígen `src` hacia la de destino `dst`.
DEVOLUCIÓN
    Devuelve la longitud total de la cadena que intentará crear.

Esta función, es bastante simple, pero hay que tener en cuenta que la cadena siempre terminará en 'NULL`.

Si se proporciona una longitud suficiente para teminar la cadena sin acortarla, lo horá. En caso contrario, se copiará sz - 1 y se añadirá posteriormente el carácter núlo al final de la cadena.

Planteamiento

ft_strlcat.c
#include "libft.h"

size_t ft_strlcat(char *dst, const char *src, size_t sz) {
    /* en este caso, hemos utilizado cuatro variables auxiliares */
    /* definimos una variable auxiliar para cada uno de los punteros objetivos, tanto `dst` como `src`. Estos nos ayudarán a guardar la longitud original del puntero `src` */
    if (/* el tamaño a copiar es mayor a `0` o es menor igual a la longitud de `dst` */)
        return (/* la longitud de `src` sumada a `sz` */)
    while(/* la posición actual de `src`sea diferente a null y el mismo contador utilizado, sea menor igual a (`sz` + (la longitud de destino - 1)) */) {
        /* establecemos el valor de la posición actual de `dst` al carácter actual de `src` */
        /* preparamos la siguiente iteración */
    }
    /* añadimos el carácter núlo al final de la cadena */
    /* bajo cualquier caso, devolveremos la longitud original de `src` + la longitud de `dst` */
    return (/* contenido return */);
}

Solución

Recuerda: para entregar tu proyecto, debes poder defenderlo. Por ello, resuelve cada enunciado con la respuesta que te parezca mas entendible a nivel presonal.

J: "No hay respuestas incorrectas, solo puntos de vista distantes".

Solución Base
Solución Óptima

Última actualización

¿Te fue útil?