home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / unix / unixtools / unixlib / clib / h / stdarg < prev    next >
Encoding:
Text File  |  1992-07-21  |  476 b   |  17 lines

  1. /* stdarg.h (c) Copyright 1990 H.Rogers */
  2.  
  3. #ifndef __STDARG_H
  4. #define __STDARG_H
  5.  
  6. typedef char *va_list;
  7.  
  8. #define va_align(x)    (((x) + (sizeof(int) - 1)) & (~(sizeof(int) - 1)))
  9.  
  10. #define va_start(a,p)    ((void)((a) = ((char *)(&(p)) + va_align(sizeof(p)))))
  11. #define va_arg(a,t)    ((sizeof(t) > sizeof(int)) ? \
  12.     *(t *)(((a) += va_align(sizeof(t))) - va_align(sizeof(t))) : \
  13.     (t)(*(int *)(((a) += sizeof(int)) - sizeof(int))))
  14. #define va_end(a)    ((void)((a) = (char *)-1))
  15.  
  16. #endif
  17.