home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 9 / CDACTUAL9.iso / progs / CB / DATA.Z / MEM.H < prev    next >
Encoding:
C/C++ Source or Header  |  1996-10-07  |  5.1 KB  |  169 lines

  1. /*  mem.h
  2.  
  3.     Memory manipulation functions
  4.  
  5. */
  6.  
  7. /* $Copyright: 1987$ */
  8. /* $Revision:   8.3  $ */
  9.  
  10. #if !defined(__MEM_H)
  11. #define __MEM_H
  12.  
  13. #if !defined(___DEFS_H)
  14. #include <_defs.h>
  15. #endif
  16.  
  17. #ifndef NULL
  18. #include <_null.h>
  19. #endif
  20.  
  21.  
  22. #if !defined(RC_INVOKED)
  23.  
  24. #if defined(__STDC__)
  25. #pragma warn -nak
  26. #endif
  27.  
  28. #endif  /* !RC_INVOKED */
  29.  
  30.  
  31. #ifdef __cplusplus
  32. extern "C" {
  33. #endif
  34.  
  35.  
  36. #ifndef _STDDEF
  37. #define _STDDEF
  38. #ifndef _PTRDIFF_T
  39. #define _PTRDIFF_T
  40. #if defined(__LARGE__) || defined(__HUGE__) || defined(__COMPACT__)
  41.    typedef long    ptrdiff_t;
  42. #else
  43.    typedef int ptrdiff_t;
  44. #endif
  45. #endif
  46. #ifndef _SIZE_T
  47. #define _SIZE_T
  48. typedef unsigned size_t;
  49. #endif
  50. #endif
  51.  
  52.  
  53. #if !defined(__FLAT__) || defined(__DPMI32__)
  54. void        _RTLENTRY  _EXPFUNC movedata(unsigned __srcseg, unsigned __srcoff,
  55.                                          unsigned __dstseg, unsigned __dstoff, size_t __n);
  56. #endif
  57.  
  58.  
  59. void _FAR * _RTLENTRY  _EXPFUNC memccpy(void _FAR *__dest, const void _FAR *__src,
  60.                                         int __c, size_t __n);
  61. int         _RTLENTRY  _EXPFUNC memcmp(const void _FAR *__s1, const void _FAR *__s2,
  62.                                        size_t __n);
  63. void _FAR * _RTLENTRY  _EXPFUNC memcpy(void _FAR *__dest, const void _FAR *__src,
  64.                                        size_t __n);
  65. int         _RTLENTRY  _EXPFUNC memicmp(const void _FAR *__s1, const void _FAR *__s2,
  66.                                         size_t __n);
  67. void _FAR * _RTLENTRYF _EXPFUNC memmove(void _FAR *__dest, const void _FAR *__src,
  68.                                         size_t __n);
  69. void _FAR * _RTLENTRYF _EXPFUNC memset(void _FAR *__s, int __c, size_t __n);
  70.  
  71. #if defined(__FLAT__)
  72. void *          _RTLENTRY  _EXPFUNC _wmemset(void *__s, int __c, size_t __n);
  73. void *          _RTLENTRY  _EXPFUNC _wmemcpy(void *__dest, const void *__src, size_t __n);
  74. #endif
  75.  
  76. #if defined(__cplusplus)
  77. extern "C++"
  78. {
  79.           void _FAR * _RTLENTRY _EXPFUNC32 memchr(void _FAR *__s, int __c, size_t __n);
  80.     const void _FAR * _RTLENTRY _EXPFUNC32 memchr(const void _FAR *__s, int __c, size_t __n);
  81. #if defined(__FLAT__)
  82.           void      * _RTLENTRY _EXPFUNC32 _wmemchr(void *__s, int __c, size_t __n);
  83.     const void      * _RTLENTRY _EXPFUNC32 _wmemchr(const void *__s, int __c, size_t __n);
  84. #endif
  85. }
  86. #else
  87.           void _FAR * _RTLENTRY _EXPFUNC32 memchr(const void _FAR *__s, int __c, size_t __n);
  88. #if defined(__FLAT__)
  89.           void      * _RTLENTRY _EXPFUNC32 _wmemchr(const void *__s, int __c, size_t __n);
  90. #endif
  91. #endif
  92.  
  93.  
  94. #if !defined(__STRING_H)
  95. /* Intrinsic functions */
  96.  
  97. void _FAR * _RTLENTRY  _EXPFUNC16 __memchr__(const void _FAR * __s, int __c, size_t __n);
  98. int         _RTLENTRY  _EXPFUNC16 __memcmp__(const void _FAR * __s1, const void _FAR * __s2, size_t __n);
  99. void _FAR * _RTLENTRY  _EXPFUNC16 __memcpy__(void _FAR * __dest, const void _FAR * __src, size_t __n);
  100. void _FAR * _RTLENTRYF _EXPFUNC16 __memset__(void _FAR * __s, int __c, size_t __n);
  101. #endif
  102.  
  103.  
  104. #if !defined(__FLAT__)
  105.  
  106. void        _RTLENTRY  _EXPFUNC movmem(const void _FAR *__src, void _FAR *__dest,
  107.                                        unsigned __length);
  108. void        _RTLENTRY  _EXPFUNC setmem(void _FAR *__dest,unsigned __length, char __value);
  109.  
  110.  
  111. #if !defined(__STDC__) /* NON_ANSI  */
  112. void  __far * _RTLENTRY _FARCALL _fmemccpy(void __far *__dest, const void __far *__src,
  113.                                            int __c, size_t __n);
  114. void  __far * _RTLENTRY _FARCALL _fmemchr(const void __far *__s, int __c, size_t __n);
  115. int           _RTLENTRY _FARCALL _fmemcmp(const void __far *__s1, const void __far *__s2,
  116.                                           size_t __n);
  117. void  __far * _RTLENTRY _FARCALL _fmemcpy(void __far *__dest, const void __far *__src,
  118.                                           size_t __n);
  119. int           _RTLENTRY _FARCALL _fmemicmp(const void __far *__s1, const void __far *__s2,
  120.                                            size_t __n);
  121. void  __far * _RTLENTRY _FARCALL _fmemmove(void __far *__dest, const void __far *__src,
  122.                                            size_t __n);
  123. void  __far * _RTLENTRY _FARCALL _fmemset(void __far *__s, int __c, size_t __n);
  124. void          _RTLENTRY _FARCALL _fmovmem(const void __far *__src, void __far *__dest,
  125.                                           unsigned __length);
  126. void          _RTLENTRY _FARCALL _fsetmem(void __far *__dest, unsigned __length,
  127.                                           char __value);
  128. #endif /* __STDC__  */
  129.  
  130.  
  131. #else  /* defined __FLAT__ */
  132.  
  133.  
  134. #define movmem(src,dest,length) (void)memmove(dest,src,length)
  135. #define setmem(dest,length,value) (void)memset(dest,value,length)
  136.  
  137.  
  138. #if !defined(__STDC__) /* NON_ANSI  */
  139. #define _fmemccpy memccpy
  140. #define _fmemchr  memchr
  141. #define _fmemcmp  memcmp
  142. #define _fmemcpy  memcpy
  143. #define _fmemicmp memicmp
  144. #define _fmemmove memmove
  145. #define _fmemset  memset
  146. #define _fmovmem  movmem
  147. #define _fsetmem  setmem
  148. #endif /* __STDC__  */
  149.  
  150.  
  151. #endif  /* __FLAT__ */
  152.  
  153.  
  154. #ifdef __cplusplus
  155. }
  156. #endif
  157.  
  158.  
  159. #if !defined(RC_INVOKED)
  160.  
  161. #if defined(__STDC__)
  162. #pragma warn .nak
  163. #endif
  164.  
  165. #endif  /* !RC_INVOKED */
  166.  
  167.  
  168. #endif  /* __MEM_H */
  169.