当前位置:编程学习 > C/C++ >>

关注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++ ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,