In this implementation memcpy() is implemented using bcopy(3), and therefore the strings may overlap. On other systems, copying overlapping
strings may produce surprises. Programs intended to be portable should use memmove(3) when src and dst may overlap.