/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_memcmp_test.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: lalgarra +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/10/06 20:05:02 by lalgarra #+# #+# */ /* Updated: 2025/10/06 20:12:26 by lalgarra ### ########.fr */ /* */ /* ************************************************************************** */ #include "libft.h" #include #include static void test(char *prefix, char str1[], char str2[], size_t size) { int res; int fd; fd = STDOUT_FILENO; ft_putstr_fd(prefix, fd); ft_putstr_fd("size:[", fd); ft_putnbr_fd((int) size, fd); ft_putstr_fd("], str1:[", fd); ft_putstr_fd(str1, fd); ft_putstr_fd("], str2:[", fd); ft_putstr_fd(str2, fd); res = ft_memcmp(str2, str1, size); ft_putstr_fd("], result:[", fd); ft_putnbr_fd(res, fd); ft_putendl_fd("]", fd); } static void zero(char src[], char dest[]) { bzero(src, 128); bzero(dest, 128); } static void do_test1(char *prefix, char src[], char dest[]) { size_t size; size = 10; zero(src, dest); memcpy(dest, "Lorem ipsum dolor sit amet consectetur adipiscing elit.", 5); memcpy(src, " ipsum dolor sit amet consectetur adipiscing elit.", 4); test(prefix, src, dest, size); } static void do_test2(char *prefix, char src[], char dest[]) { size_t size; zero(src, dest); size = 10; memcpy(dest, "L\x06rem ipsum dolor sit amet consectetur adipiscing elit.", 5); memcpy(src, " ipsum dolor sit amet consectetur adipiscing elit.", 5); test(prefix, src, dest, size); } static void do_test3(char *prefix, char src[], char dest[]) { size_t size; zero(src, dest); size = 5; test(prefix, src, dest, size); } static void do_test4(char *prefix, char src[], char dest[]) { size_t size; zero(src, dest); size = 0; memcpy(dest, "Lorem ipsum dolor sit amet consectetur adipiscing elit.", 8); test(prefix, src, dest, size); } static void do_test5(char *prefix, char src[], char dest[]) { size_t size; zero(src, dest); size = 4; memcpy(dest, "\xff\xaa\xde\x12", 5); memcpy(src, "\xff\xaa\xde\x12XABC", 5); test(prefix, src, dest, size); } int main(void) { char src[128]; char dest[128]; do_test1("test 1: ", src, dest); do_test2("test 2: ", src, dest); do_test3("test 3: ", src, dest); do_test4("test 4: ", src, dest); do_test5("test 5: ", src, dest); return (0); }