commit
This commit is contained in:
36
C_03/git/ex05/ft_strlcat.c
Normal file
36
C_03/git/ex05/ft_strlcat.c
Normal file
@@ -0,0 +1,36 @@
|
||||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* ft_strlcat.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: gbaconni <marvin@42lausanne.ch> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2021/08/12 17:12:30 by gbaconni #+# #+# */
|
||||
/* Updated: 2021/08/12 17:48:17 by gbaconni ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
unsigned int ft_strlcat(char *dest, char *src, unsigned int size)
|
||||
{
|
||||
char *s1;
|
||||
char *s2;
|
||||
unsigned int size_dest;
|
||||
|
||||
s1 = dest;
|
||||
s2 = src;
|
||||
size_dest = 0;
|
||||
while (*s1 != '\0')
|
||||
s1++;
|
||||
size_dest = s1 - dest;
|
||||
while (*s2 != '\0')
|
||||
{
|
||||
if (size != 1)
|
||||
{
|
||||
*s1++ = *s2++;
|
||||
size--;
|
||||
}
|
||||
s2++;
|
||||
}
|
||||
*s1 = '\0';
|
||||
return (size_dest + (s2 - src));
|
||||
}
|
||||
40
C_03/git/ex05/main.c
Normal file
40
C_03/git/ex05/main.c
Normal file
@@ -0,0 +1,40 @@
|
||||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* main.c :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: gbaconni <marvin@42lausanne.ch> +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2021/08/12 15:28:30 by gbaconni #+# #+# */
|
||||
/* Updated: 2021/08/12 17:22:10 by gbaconni ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
unsigned int ft_strlcat(char *dest, char *src, unsigned int size);
|
||||
|
||||
int main(void)
|
||||
{
|
||||
char src[32];
|
||||
char dest[32];
|
||||
unsigned int size;
|
||||
unsigned int r;
|
||||
|
||||
size = 0;
|
||||
r = 0;
|
||||
printf("Input String #1 [max 31]: ");
|
||||
scanf("%s", src);
|
||||
printf("Input String #2 [max 31]: ");
|
||||
scanf("%s", dest);
|
||||
printf("Input Number: ");
|
||||
scanf("%u", &size);
|
||||
r = ft_strlcat(dest, src, size);
|
||||
printf("src=%s dest=%s size=%d r=%d (ft_strlcat)\n", src, dest, size, r);
|
||||
r = strlcat(dest, src, size);
|
||||
printf("src=%s dest=%s size=%d r=%d (strlcat)\n", src, dest, size, r);
|
||||
return (0);
|
||||
}
|
||||
8
C_03/git/ex05/main.sh
Executable file
8
C_03/git/ex05/main.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
#norminette -R CheckForbiddenSourceHeader ft_*.c
|
||||
norminette -R CheckForbiddenSourceHeader
|
||||
gcc -Wall -Wextra -Werror -o a.out *.c
|
||||
echo $(basename $PWD):
|
||||
./a.out
|
||||
rm -f a.out
|
||||
Reference in New Issue
Block a user