c - 从C中的函数获取返回值

标签 c function pointers

考虑这两个函数:

int add1(int x,int y)
{
return x+y;
}


void add2(int x,int y,int *sum)
{
*sum=x+y;
}

我通常使用 add1 形式的函数,但我发现一些代码使用 add2 形式的函数。
即使 size 返回值很大(如数组或结构),我们也可以只返回它的 ponter
我想知道是否有任何理由使用第二种形式?

最佳答案

还有返回成功状态的原因。

有很多功能,例如:

bool f(int arg1, int arg2, int *ret)
{
}

其中 bool(或 enum)返回函数的成功。而不是检查 if ret is null...(如果您有多个变量)。

关于c - 从C中的函数获取返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15589578/

相关文章:

无法理解为什么队列函数程序第一次工作但之后不按预期工作

c - 如何在获得新输入之前清除标准输入?

c++ - open gl基本程序报错?

c - 不使用 _Generic 的 C 函数重载

c++ - 关于C++指针的疑惑

c - C 中二维数组的访问

node.js - 有没有办法在延迟后停止函数? Nodejs

重新整理数据框

c - 指向多维数组的指针

c++ - 为什么第一次迭代后的指针指向随机值?