diff options
Diffstat (limited to 'memory/rawmemccpy.c')
-rw-r--r-- | memory/rawmemccpy.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/memory/rawmemccpy.c b/memory/rawmemccpy.c new file mode 100644 index 0000000..ed83ef1 --- /dev/null +++ b/memory/rawmemccpy.c @@ -0,0 +1,13 @@ +#include "memory.h" + +void *rawmemccpy(void *restrict dest, void const *restrict src, int value) +{ + unsigned char *restrict destination = dest; + unsigned char const *restrict source = src; + size_t i = 0; + for (i = 0;; i++) { + destination[i] = source[i]; + if (destination[i] == (unsigned char)value) + return &destination[i + 1]; + } +} |