c语言自定义函数中,怎样返回多个数值呢??好像return不行啊,求高手举例解答
7个回答
展开全部
函数执行到第一个return就返回了。你可以利用一些数据结构,C里面的结构体就很好,可以包含很多数据类型;C++还可以用类;比如先定义一个结构体
struct str
{
int a;
float b;
//还可以有很多类型
};
str fun(struct *A) //定义一个函数
{
//你要写的代码,可以修改传进来的A的结构体中的数据的值
return *A;
}
写到这你应该懂了吧,接下来调用A.a,A.b........就行了
再具体点,比较简单的:
struct str
{
int a;
float b;
};
str fun(str *A)
{
A->a=10;
A->b=1.1;
return *A;
}
void main()
{
str B;
B.a=1;
B.b=0.1;
fun(&B);
cout<<B.a<<endl<<B.b<<endl; //这是C++的输出语句,你可以换成C的
}
输出结果是:
10
1.1
struct str
{
int a;
float b;
//还可以有很多类型
};
str fun(struct *A) //定义一个函数
{
//你要写的代码,可以修改传进来的A的结构体中的数据的值
return *A;
}
写到这你应该懂了吧,接下来调用A.a,A.b........就行了
再具体点,比较简单的:
struct str
{
int a;
float b;
};
str fun(str *A)
{
A->a=10;
A->b=1.1;
return *A;
}
void main()
{
str B;
B.a=1;
B.b=0.1;
fun(&B);
cout<<B.a<<endl<<B.b<<endl; //这是C++的输出语句,你可以换成C的
}
输出结果是:
10
1.1
参考资料: 原创
展开全部
采用数组呀!
如rrturn a[n]:要返回的n个值放在a[n]
如rrturn a[n]:要返回的n个值放在a[n]
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置全局变量,用数组名作为形参,利用指针变量,引用参数
参考资料: http://zhidao.baidu.com/question/193579987.html
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以设置全局变量返回。在函数里改变了值,其他引用也会变化,也可以用指针传递。祝您周末愉快~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用全局变量,或者把要修改的值的指针作为该函数的形参。
int a = 0;/* 全局变量 */
void fun(int *x)
{
*x = 1;
}
main(void)
{
fun(&a);
printf("%d\n", a);
}
int a = 0;/* 全局变量 */
void fun(int *x)
{
*x = 1;
}
main(void)
{
fun(&a);
printf("%d\n", a);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询