momusys.h
上传用户:hxb_1234
上传日期:2010-03-30
资源大小:8328k
文件大小:6k
源码类别:

VC书籍

开发平台:

Visual C++

  1.                                              
  2. #ifndef _MOMUSYS_H_                          
  3.                                              
  4.                                              
  5. # define _MOMUSYS_H_                   
  6.                                              
  7. #   include "non_unix.h"
  8.                                              
  9. #   if defined(C_ANSI) || defined(__STDC__)  
  10. #      define  C_IS_ANSI                     
  11. #      define  _C_ANSI_ 
  12. #   endif
  13.                                              
  14. #   include <stdio.h>                        
  15. #   include <stdlib.h>                       
  16. #   include <math.h>                         
  17.                                              
  18. #   if defined (SYSV) || defined (__STDC__) 
  19. #      include <string.h>                    
  20. #      define bzero(s1, length)             memset(s1, '', length)
  21. #      define bcopy(s1, s2, length)         memcpy(s1, s2  , length)
  22. #      define bcmp(s1, s2, length)          memcmp(s1, s2, length)
  23. #      define memzero(s1, length)           memset(s1, '', length)
  24. #      define index(s1, c)                  strchr(s1, c)
  25. #      define rindex(s1, c)                 strrchr(s1, c)
  26. #   else
  27. #      include <strings.h>
  28. #      define strchr(s1, c)                 index(s1, c)
  29. #      define strrchr(s1, c)                rindex(s1, c)
  30. #      define memcpy(s1, s2 , length)       bcopy(s1, s2, length)
  31. #      define memzero(s1, length)           bzero(s1, length)
  32. #      define memcmp(s1, s2, length)        bcmp(s1, s2, length)
  33. #   endif
  34.                                              
  35. #   if !defined(FALSE) || ((FALSE)!= 0)      
  36. #      define  FALSE           0             
  37. #   endif                                    
  38. #   if !defined(TRUE)  || ((TRUE) != 1)      
  39. #      define  TRUE            1             
  40. #   endif                                    
  41. #   ifndef     NULL
  42. #      define  NULL            0
  43. #   endif
  44.                      
  45.                      
  46.                      
  47. #define Const const
  48.     typedef void                 Void       ;
  49.     typedef char                 Char       ;
  50.     typedef const    char        C_Char     ;
  51.     typedef unsigned char        Byte       ;
  52.     typedef Const    Byte        C_Byte     ;
  53.     typedef unsigned char        UChar      ;
  54.     typedef Const    UChar       C_UChar    ;
  55.  
  56.     typedef short    int         Short      ;
  57.     typedef short    int         SInt       ;
  58.     typedef unsigned short       UShort     ;
  59.     typedef unsigned short       USInt      ;
  60.     typedef Const    short       C_Short    ;
  61.     typedef Const    short       C_SInt     ;
  62.     typedef Const    UShort      C_UShort   ;
  63.     typedef Const    UShort      C_USInt    ;
  64.     typedef int                  Int        ;
  65.     typedef long     int         LInt       ;
  66.     typedef Const    int         C_Int      ;
  67.     typedef unsigned int         U_Int      ;
  68.     typedef unsigned int         UInt       ;
  69.     typedef unsigned long int    ULInt      ;
  70.     typedef Const    UInt        C_UInt     ;
  71.     typedef float                Float      ;
  72.     typedef Const    float       C_Float    ;
  73.     typedef double               Double     ;
  74.     typedef Const    double      C_Double   ;
  75.     typedef FILE                 File       ;
  76. #if 0
  77.     typedef long            INT32;
  78.     typedef int             INT32;
  79.     typedef short           INT16;
  80.     typedef char            INT8;
  81.     typedef unsigned int    UINT32;
  82.     typedef unsigned short  UINT16;
  83.     typedef unsigned char   UINT8;
  84.  
  85. #   if __STDC__ 
  86.         typedef signed char INT8;
  87. #   else
  88.         typedef char        INT8;
  89. #   endif
  90.     typedef unsigned long   BITS32;
  91.     typedef unsigned short  BITS16;
  92.     typedef unsigned char   BYTE;
  93.     
  94.     typedef unsigned char   BOOL;
  95. #endif
  96.                      
  97.                      
  98.                      
  99. #   ifndef MAX
  100. #   define  MAX(a,b)              (((a) > (b)) ? (a) : (b))
  101. #   endif
  102. #   ifndef MIN
  103. #   define  MIN(a,b)              (((a) < (b)) ? (a) : (b))
  104. #   endif
  105. #   define  CLIP(a,i,s)           (((a) > (s)) ? (s) : MAX(a,i))
  106. #   define  INT(a)                ((Int) (floor((Double) a)))
  107. # define MNINT(a)       ((a) < 0 ? (Int)(a - 0.5) : (Int)(a + 0.5))
  108. # define MAX3(x,y,z)         MAX(MAX(x,y),z)
  109. # define MIN3(x,y,z)         MIN(MIN(x,y),z)
  110. # define MEDIAN(x,y,z)      ((x)+(y)+(z)-MAX3(x,y,z)-MIN3(x,y,z))
  111. #   define  POW2(a)               ((a)*(a))
  112. #   define  SQUARE(a)             ((a)*(a))
  113. #   define  POW3(a)               ((a)*(a)*(a))
  114. #   define  CUBE(a)               ((a)*(a)*(a))
  115. #   define  ABS(x)                (((x) < 0) ? -(x) : (x))
  116. #   define  SIGN(x)               (((x) < 0) ? -1 : 1)
  117. #   define  EVEN(a)               ((a) % 2) == 0)
  118. #   define  ODD(a)                ((a) % 2) == 1)
  119. #   define  STRLEN(P_string)      ((P_string==NULL) ? strlen(P_string) : -1)
  120. #   define  TYPE_MALLOC(type,nb) ((type *) malloc(sizeof(type)*nb))
  121. #   define  NEW(type)             ((type *) malloc(sizeof(type)   ))
  122. #define MOMCHECK(a) if ((a) == 0) fprintf(stdout, "MOMCHECK failed in file %s, line %in", __FILE__, __LINE__)
  123.                                              
  124. #   ifdef C_IS_ANSI                          
  125.                                              
  126. #      define _ANSI_ARGS_(argv)   argv       
  127. #      define _P_(argv)           argv       
  128.                                              
  129. #   else                                     
  130.                                              
  131. #      define _ANSI_ARGS_(argv)   ()         
  132. #      define _P_(argv)           ()         
  133.                                              
  134. #   endif
  135. #include "mom_structs.h"
  136. #endif                      
  137.