summaryrefslogtreecommitdiff
path: root/rushs/tinyprintf/my_memcpy/my_memcpy.c
diff options
context:
space:
mode:
Diffstat (limited to 'rushs/tinyprintf/my_memcpy/my_memcpy.c')
-rw-r--r--rushs/tinyprintf/my_memcpy/my_memcpy.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/rushs/tinyprintf/my_memcpy/my_memcpy.c b/rushs/tinyprintf/my_memcpy/my_memcpy.c
new file mode 100644
index 0000000..a6a48d4
--- /dev/null
+++ b/rushs/tinyprintf/my_memcpy/my_memcpy.c
@@ -0,0 +1,28 @@
+#include "my_memcpy.h"
+
+void *my_memcpy(void *dest, const void *source, size_t num)
+{
+ char *d = dest;
+ const char *s = source;
+ if (dest > source) // reverse array
+ {
+ size_t l = num;
+ for (; l > 0; l--)
+ {
+ d[l - 1] = s[l - 1];
+ }
+ }
+ else
+ {
+ for (size_t i = 0; i < num; i++)
+ {
+ d[i] = s[i];
+ }
+ }
+ return dest;
+}
+
+int main(void)
+{
+ return 0;
+}