diff options
| author | EmulatedSeasons <89668582+EmulatedSeasons@users.noreply.github.com> | 2024-05-05 01:08:00 -0400 |
|---|---|---|
| committer | EmulatedSeasons <89668582+EmulatedSeasons@users.noreply.github.com> | 2024-05-05 01:08:00 -0400 |
| commit | 4aa74dbe2a35a45668b33d688f17b680c2232572 (patch) | |
| tree | 42794e2fe2ba653ccbf772bb02dbfda07f75943e /libc/memmove.c | |
| parent | 2d59766eb330b9d15a9bcbcd7e1695809fc099c5 (diff) | |
improved makefile somewhat
Diffstat (limited to 'libc/memmove.c')
| -rw-r--r-- | libc/memmove.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libc/memmove.c b/libc/memmove.c new file mode 100644 index 0000000..98c787f --- /dev/null +++ b/libc/memmove.c @@ -0,0 +1,14 @@ +#include <string.h>
+
+void* memmove(void* dstptr, const void* srcptr, size_t size) {
+ unsigned char* dst = (unsigned char*) dstptr;
+ const unsigned char* src = (const unsigned char*) srcptr;
+ if (dst < src) {
+ for (size_t i = 0; i < size; i++)
+ dst[i] = src[i];
+ } else {
+ for (size_t i = size; i != 0; i--)
+ dst[i-1] = src[i-1];
+ }
+ return dstptr;
+}
\ No newline at end of file |
