接受默认参数的 C 函数

标签 c function default-arguments

我正在尝试编写一个具有可选参数的 C 函数,如果该参数未“使用”,则它具有默认值。

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

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

/* Function Call */

DumpData(1, 2);

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

最佳答案

不,在 C 中无法做到这一点。最好的办法是拥有单独的函数:

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

int DumpDataABC(int a, int b, int c)
{
    ...
}

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

关于接受默认参数的 C 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16949886/

相关文章:

c - C 中的函数定义

javascript - 调用另一个函数时如何禁用该函数?

c++ - 忽略函数的默认模板参数

c++ - 模板方法和默认模板参数

c - 当用类型声明指针时,这怎么能取消引用 ‘void *’ 呢?

c - 从 socket 到管道的接头卡住

c - 从 C 中的文件读取后,在字符串后面放置一个空值?

c - 为什么主机系统上的 lua 比 linux vm 上的慢?

python - 使用函数 : print vs return

c++ - 有没有办法确保传递给函数的两个参数在 C++ 中被视为第一个和第三个参数?