cpp/string/byte/memmove

Copies characters from the object pointed to by  to the object pointed to by. Both objects are reinterpreted as arrays of.

The objects may overlap: copying takes place as if the characters were copied to a temporary character array and then the characters were copied from the array to.

If either or  is an invalid or null pointer, the behavior is undefined, even if  is zero.

If the objects are potentially-overlapping or not, the behavior of is not specified and may be undefined.