关注C++细节——变参数函数的参数获取问题
va_list
va_start
va_end
va_arg
变参数函数问题中主要是靠这几个函数来获取参数,这四个函数都在cstdarg 或 stdarg.h包中,可以百度下,很简单
下面直接举个例子:
[cpp]
#include <iostream>
#include <cstdarg>
using namespace std;
int print(char *start, ...)
{
va_list args;
char *tmp = start;
va_start(args,start);
//Author Blog:http://blog.csdn.net/IAccepted
do www.zzzyk.com
{
cout<<tmp<<endl;
tmp = va_arg(args,char *);
}while(tmp!=NULL);
va_end(args);
return 0;
}
int main()
{
print("1", "2", "3", "4", "5", "6", "7", "8", NULL);
//Author Blog:http://blog.csdn.net/IAccepted
return 0;
}
参数获取操作必须包含在va_start 和va_end之间
补充:软件开发 , C++ ,