早教吧 育儿知识 作业答案 考试题库 百科 知识分享

stdarg.h中的内容(那三个函数的用法)#ifSTDC#defineCdecl#else#defineCdeclcdecl#endif#if!defined(STDARG)#defineSTDARGtypedefvoid*valist;#definevastart(ap,parmN)(ap=...)#definevaarg(ap,type)(*((type*)(ap))++)#

题目详情
stdarg.h中的内容(那三个函数的用法)
#if __STDC__
#define _Cdecl
#else
#define _Cdecl cdecl
#endif
#if !defined(__STDARG)
#define __STDARG
typedef void *va_list;
#define va_start(ap, parmN) (ap = ...)
#define va_arg(ap, type) (*((type *)(ap))++)
#define va_end(ap)
#define _va_ptr (...)
#endif

▼优质解答
答案和解析
首先注意,va_list是一个类型,而va_start va_arg va_end (以及C99的va_copy)一定是宏。其次,这些东西用于辅助构建可变参数函数:#include void foo(int n, ...) //&...