1*1debfc3dSmrg /* memset 2*1debfc3dSmrg This implementation is in the public domain. */ 3*1debfc3dSmrg 4*1debfc3dSmrg /* 5*1debfc3dSmrg 6*1debfc3dSmrg @deftypefn Supplemental void* memset (void *@var{s}, int @var{c}, @ 7*1debfc3dSmrg size_t @var{count}) 8*1debfc3dSmrg 9*1debfc3dSmrg Sets the first @var{count} bytes of @var{s} to the constant byte 10*1debfc3dSmrg @var{c}, returning a pointer to @var{s}. 11*1debfc3dSmrg 12*1debfc3dSmrg @end deftypefn 13*1debfc3dSmrg 14*1debfc3dSmrg */ 15*1debfc3dSmrg 16*1debfc3dSmrg #include <ansidecl.h> 17*1debfc3dSmrg #include <stddef.h> 18*1debfc3dSmrg 19*1debfc3dSmrg PTR memset(PTR dest,register int val,register size_t len)20*1debfc3dSmrgmemset (PTR dest, register int val, register size_t len) 21*1debfc3dSmrg { 22*1debfc3dSmrg register unsigned char *ptr = (unsigned char*)dest; 23*1debfc3dSmrg while (len-- > 0) 24*1debfc3dSmrg *ptr++ = val; 25*1debfc3dSmrg return dest; 26*1debfc3dSmrg } 27