接受默认参数的C函数

xRe*_*Red 1 c function default-arguments

我试图编写一个具有可选参数的C函数,如果该参数未被"使用",则它具有默认值.

int DumpData(int a, int b, int c=0)
{

if(c != 0)
{
          //stuff
}
    //banana
}

/* Function Call */

DumpData(1, 2);
Run Code Online (Sandbox Code Playgroud)

有什么方法可以解决这个问题吗?

Ada*_*eld 8

不,在C中没有办法做到这一点.你能做的最好的事情就是拥有不同的功能:

int DumpData(int a, int b)
{
    return DumpDataABC(a, b, 0);
}

int DumpDataABC(int a, int b, int c)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

或者,使用C++而不是C.