]> pd.if.org Git - pdclib/blob - functions/string/memmove.c
Merged PDPCLIB and Therx code.
[pdclib] / functions / string / memmove.c
1 // ----------------------------------------------------------------------------
2 // $Id$
3 // ----------------------------------------------------------------------------
4 // Public Domain C Library - http://pdclib.sourceforge.net
5 // This code is Public Domain. Use, modify, and redistribute at will.
6 // ----------------------------------------------------------------------------
7
8 void * memmove( void * s1, const void * s2, size_t n ) { /* TODO */ };
9
10 /* PDPC code - unreviewed
11 {
12     char *p = s1;
13     const char *cs2 = s2;
14     size_t x;
15     
16     if (p <= cs2)
17     {
18         for (x=0; x < n; x++)
19         {
20             *p = *cs2;
21             p++;
22             cs2++;
23         }
24     }
25     else
26     {
27         if (n != 0)
28         {
29             for (x=n-1; x > 0; x--)
30             {
31                 *(p+x) = *(cs2+x);
32             }
33         }
34         *(p+x) = *(cs2+x);
35     }
36     return (s1);
37 }
38 */