va-mn10300.h
来自「彭国伦书上的所有原代码」· C头文件 代码 · 共 36 行
H
36 行
/* 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) \ (__builtin_next_arg (LASTARG), __gnuc_va_start (AP))#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
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?