va-mn10200.h

来自「彭国伦书上的所有原代码」· C头文件 代码 · 共 38 行

H
38
字号
/* CYGNUS LOCAL entire file/law *//* Define __gnuc_va_list. */#ifndef __GNUC_VA_LIST#define __GNUC_VA_LISTtypedef void *__gnuc_va_list;#endif /* not __GNUC_VA_LIST *//* If this is for internal libc use, don't define anything but   __gnuc_va_list.  */#if defined (_STDARG_H) || defined (_VARARGS_H)#define __gnuc_va_start(AP) (AP = (__gnuc_va_list)__builtin_saveregs())#define __va_ellipsis ...#ifdef _STDARG_H#define va_start(AP, LASTARG) \ (AP = ((__gnuc_va_list) __builtin_next_arg (LASTARG)))#else#define va_alist __builtin_va_alist#define va_dcl int __builtin_va_alist; __va_ellipsis#define va_start(AP)  AP=(char *) &__builtin_va_alist#endif/* Now stuff common to both varargs & stdarg implementations.  */#define __va_rounded_size(TYPE)						\  (((sizeof (TYPE) + sizeof (int) - 1) / sizeof (int)) * sizeof (int))#undef va_endvoid va_end (__gnuc_va_list);#define va_end(AP) ((void)0)#define va_arg(AP, TYPE)						\ (sizeof (TYPE) > 8							\  ? (AP = (__gnuc_va_list) ((char *) (AP) + __va_rounded_size (char *)),\    **((TYPE **) (void *) ((char *) (AP) - __va_rounded_size (char *))))\  : (AP = (__gnuc_va_list) ((char *) (AP) + __va_rounded_size (TYPE)),	\    *((TYPE *) (void *) ((char *) (AP) - __va_rounded_size (TYPE)))))#endif/* END CYGNUS LOCAL */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?