利用结构体让函数返回多个值

c语言

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "stdio.h"
typedef struct test //建立结构体
{
trueint a;
trueint b;
trueint c;
}T;

T testt(int aa,int bb,int cc) //建立函数
{
trueT aaa;
trueaaa.a=aa*bb;
trueaaa.b=aa*cc;
trueaaa.c=bb*cc;
truereturn aaa; //返回结构
}

int main()
{
trueT b=testt(4,5,6);
trueprintf("%d %d %d \n",b.a,b.b,b.c);
trueT *f=&b;
trueprintf("%d %d %d",f->a,f->b,f->c);
}

C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "iostream"
typedef struct sss //建立结构体
{
trueint a;
trueint b;
trueint c;
}S;

S s(double a,double b,double c) 建立函数
{
trueS d;
trued.a=a*a;
trued.b=b*b;
trued.c=c*c;
truereturn d;//返回结构体
}

int main()
{
trueS z=s(3,4,5);
truestd::cout<<z.a
true <<std::endl
true <<z.b
true <<std::endl
true <<z.c
true <<std::endl;
}