memcpy != bcopy (Was Re: bcopy() bzero())

Larry Jones scjones at sdrc.UUCP
Fri Mar 2 11:06:54 AEST 1990


In article <1990Feb23.225358.375 at sj.ate.slb.com>, konath at sj.ate.slb.com (Kannan Konath) writes:
> In the VAX-VMS-C manual,  it states that memmove() has exactly the same
> functionality as  memcpy().  Does that mean memmove() does not handle
> overlapped moves or does that mean memcpy() handles overlapped moves.

Both handle overlapped moves correctly.  The documentation
doesn't come right out and say it like it should, but it implies
it by saying "Programs that require portability should use
memmove if the area pointed at by s1 could overlap the area
pointed at by s2."

(At least this is the intent -- the original implementation was
defective for moves over 64k bytes, but I'm pretty sure that has
been fixed for quite awhile now.)
----
Larry Jones                         UUCP: uunet!sdrc!scjones
SDRC                                      scjones at SDRC.UU.NET
2000 Eastman Dr.                    BIX:  ltl
Milford, OH  45150-2789             AT&T: (513) 576-2070
"You know how Einstein got bad grades as a kid?  Well MINE are even WORSE!"
-Calvin



More information about the Comp.lang.c mailing list