Map system 5/ansi routines onto BSD routines.
[unix-history] / usr / src / usr.bin / tn3270 / general / general.h
/*
* Some general definitions.
*/
#define numberof(x) (sizeof x/sizeof x[0])
#define highestof(x) (numberof(x)-1)
#if defined(unix)
#define ClearElement(x) bzero((char *)&x, sizeof x)
#define ClearArray(x) bzero((char *)x, sizeof x)
#else /* defined(unix) */
#define ClearStructure(x) memset((char *)&x, 0, sizeof x)
#define ClearArray(x) memset((char *)x, 0, sizeof x)
#endif /* defined(unix) */
#if defined(unix) /* Define BSD equivalent mem* functions */
#define memcpy(dest,src,n) bcopy(src,dest,n)
#define memmove(dest,src,n) bcopy(src,dest,n)
#define memset(s,c,n) if (c == 0) { \
bzero(s,n); \
} else { \
char buffer[100]; \
\
sprintf( \
"Attempt to use memchr(, != 0,) in %s, %s.\n, \
__FILE__, __LINE__); \
ExitString(stderr, buffer, 1); \
}
#endif /* defined(unix) */