Can memcpy or memmove return a different pointer than dest?
memmove will never return anything other than dest. Returning dest, as opposed to making memmove void, is useful when the first argument is a computed expression, because it lets you avoid computing the same value upfront, and storing it in a variable. This lets you do in a single line void *dest = memmove(&buf[offset] + … Read more