C/C++ 函数返回多个参数
转自:https://blog.csdn.net/onlyou2030/article/details/48174461
笔者是 Python 入门的,一直很困惑 C/C++ 中函数如何返回多个参数。
如果一个函数需要返回多个参数,可以采用以下两种方法:
传引用或指针作为入参,函数体内直接修改地址处的内容
第一种方法是将返回值作为写参数。
#include <iostream>
#include <string>
using namespace std;
void fun(int &a, char &b, string &c)
{
a = 1;
b = 'b';
c = "test";
}
int main()
{
int a;
char b;
string c;
fun(a,b,c);
cout << a << " " << b << " " << c << endl;
}
返回结构体
第二种方法是定义一个结构,返回指向该结构的指针。
#include <iostream>
#include <string>
using namespace std;
struct result
{
int a;
char b;
string c;
};
result * fun()
{
result *test=new result;
test->a = 1;
test->b = 'b';
test->c = "test";
return test;
}
int main()
{
result *test;
test=fun();
cout << test->a << " " << test->b << " " << test->c << endl;
delete test;
return 1;
}