c函数声明中的"..."是什么意思?

Abb*_*bas 2 c printf mingw declaration function

我正在浏览MinGW附带的stdio.h头文件,并注意到该printf函数声明如下:

int printf (const char *__format, ...)
{
    //body omitted
}
Run Code Online (Sandbox Code Playgroud)

我之前从未见过函数参数列表中的省略号,所以我试了一下.它编译并运行没有错误.那么,"......"的目的是什么?

Mys*_*ial 5

这意味着该函数是一个可变参数函数,它接受可变数量的参数:

http://en.wikipedia.org/wiki/Variadic_function

printf() 本身可能是可变函数的最好例子.