c++函数中return(a,b)可以返回两个值吗?

 我来答
琦夏侯岚S7
2020-03-20 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:26%
帮助的人:818万
展开全部
C系列语言是不能的,只能返回一个返回值
但纠正一下三楼的说法,不是所有语言都是这样,比如matlab就可以返回多个。
如果在C++语言中需要返回多个值可以有以下三种方法:
1、返回一个数组的首地址,那么可以把整个数组的元素返回。
例如:
double*
a;
a=f();
double*
f()
{
b=(double*)malloc(8*2);
b[0]=1;
b[1]=2;
return
b;
}
但是多次调用还要考虑释放内存问题
2、传入指针
例如:
double
a[2];
f(a)
void
f(double
*a)
{
a[0]=1;
a[1]=2;
}
3、输入引用,可以返回不同类型变量
例如:
int
a;
double
b;
f(a,b)
void
f(int
&a,double
&b)
{
a=1;
b=2;
}
理睿彤绪立
2019-10-17 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.2万
采纳率:28%
帮助的人:942万
展开全部
不可以。逗好运算符的值是最后一个,即你只是返回了b.要想返回两个数你可以专门定义一个结构体,再返回。c++STL就是这样干的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
饶昕楚经
2019-12-03 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:633万
展开全部
不可以
(a,b)是一个逗号表达式,逗号表达式总是返回最右面的值,所以这个表达式的值是b,即return
(a,b)等价于:
a;
return
b;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式