home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 2 / DATAFILE_PDCD2.iso / utilities2 / unixlib36d / UnixLib36d / src / c / memset < prev    next >
Encoding:
Text File  |  1994-03-08  |  1022 b   |  64 lines

  1. #ifdef __STDC__
  2. static char sccs_id[] = "@(#) memset.c 1.0 " __DATE__ " HJR";
  3. #else
  4. static char sccs_id[] = "@(#) memset.c 1.0 26/9/90 HJR";
  5. #endif
  6.  
  7. /* memset.c (c) Copyright 1990 H.Rogers */
  8.  
  9. #include <string.h>
  10.  
  11. #ifdef ARCH
  12. extern void *__memset (void *, int, size_t);
  13. #endif
  14.  
  15. #ifdef __STDC__
  16. void *(memset) (register void *s, register int c, register size_t n)
  17. #else
  18. void *(memset) (s, c, n)
  19.      register void *s;
  20.      register int c;
  21.      register size_t n;
  22. #endif
  23. #ifdef ARCH
  24. {
  25.   return (__memset (s, c, n));
  26. }
  27. #else
  28. {
  29.   register unsigned char *_s = (unsigned char *) s;
  30.  
  31.   while (n & 0x07)
  32.     {
  33.       n--;
  34.       *_s++ = c;
  35.     }
  36.   n >>= 3;
  37.   while (n)
  38.     {
  39.       n--;
  40.       *_s++ = c;
  41.       *_s++ = c;
  42.       *_s++ = c;
  43.       *_s++ = c;
  44.       *_s++ = c;
  45.       *_s++ = c;
  46.       *_s++ = c;
  47.       *_s++ = c;
  48.     }
  49.  
  50.   return (s);
  51. }
  52. #endif
  53.  
  54. #ifdef __STDC__
  55. void *(bzero) (register void *s, register size_t n)
  56. #else
  57. void *(bzero) (s, n)
  58.      register void *s;
  59.      register size_t n;
  60. #endif
  61. {
  62.   return (bzero (s, n));
  63. }
  64.