What is the purpose of `void*` return in memset?

43 Views Asked by At

I'am pretty amateur in C, please forgive me if this question is silly.

This is memset implementation in GCC took from here:

PTR
memset (PTR dest, register int val, register size_t len)
{
  register unsigned char *ptr = (unsigned char*)dest;
  while (len-- > 0)
    *ptr++ = val;
  return dest;
}

I would like to know why memset returns pointer that was passed thru parameter, is not changed by function.

0

There are 0 best solutions below