From 54d5ba67489b3fdaf437c05675eb9b1f6d085a84 Mon Sep 17 00:00:00 2001 From: Marc Pervaz Boocha Date: Thu, 7 Apr 2022 19:33:30 +0530 Subject: Initial commit --- memory/memccmp.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 memory/memccmp.c (limited to 'memory/memccmp.c') diff --git a/memory/memccmp.c b/memory/memccmp.c new file mode 100644 index 0000000..dadb406 --- /dev/null +++ b/memory/memccmp.c @@ -0,0 +1,14 @@ +#include "memory.h" + +int memccmp(void const *buffer1, void const *buffer2, int value, size_t size) +{ + unsigned char const *buffer[] = {buffer1, buffer2}; + for (size_t i = 0; i < size; i++) { + if (buffer[0][i] != buffer[1][i]) + return buffer[0][i] - buffer[1][i]; + if (buffer[0][i] == (unsigned char)value || + buffer[1][i] == (unsigned char)value) + break; + } + return 0; +} -- cgit v1.2.3-70-g09d2