所以我有这个函数,我返回2个值:
return result, result2;
Run Code Online (Sandbox Code Playgroud)
现在我要做的是在我的main函数中使用这两个值.我想将它保存到main函数中的变量中,如下所示:
variable = function(a,b);
Run Code Online (Sandbox Code Playgroud)
但是,您如何在此指定您想要的值?
fed*_*024 12
不,你不能在C中做到这一点,你可以只返回一个值.逗号运算符只返回最后一个值,因此您实际上返回第二个值.
您可以通过引用传递数据,例如
function(&a, &b);
void function(int *a, int* b){
*a = 42;
*b = 666;
}
Run Code Online (Sandbox Code Playgroud)
您还可以将它们放在结构中并将其返回,甚至是指向动态分配结构的指针.
typedef struct int_pair {
int a, b;
} int_pair;
int_pair function(){
int_pair s;
s.a = 42;
s.b = 666;
return s;
}
Run Code Online (Sandbox Code Playgroud)