可変パラメータリスト

669 ワード

さらにc++には関数リロードがあり、cには可変パラメータリストがあり、stdargマクロで定義はのヘッダファイルには、3つのマクロがあります:va_start(va_listの変数名、省略記号の前の最後の名前付きパラメータ)は初期化に使用され、va_arg(va_listの変数名、可変パラメータタイプ)は、可変パラメータを取り出すために使用され、va_end(va_listの変数名)は、取得値の終了を示すために使用され、va_Listは、va_というタイプを宣言します.listの変数arg
#include<stdio.h>
#include<stdarg.h>
float average(int val,...)
{
    va_list arg;
    int count;
    float sum = 0;
    va_start(arg,val);
    for(count = 0;count < val;count++)
    {
        sum += va_arg(arg,int);
    }
    va_end(arg);
    return sum / val;
}//    
int main()
{
    printf("%f
",average(5,1,2,3,5,6)); return 0; }