c语言return几个值?
1 return只能返回一个变量,但该变量里是可以包含多个值的,即能满足"有2个以上返回值"的要求
2 方法
采用数组或结构体等复合数据类型来作为函数的返回值类型
3 示例
#include<stdio.h>
#include<malloc.h>
//方法1: 返回一个包含两个值的数组
int* fun1(){
int *result = (int*)malloc(2 * sizeof(int));
result[0] = 5;
result[1] = 6;
return result;
}
//方法2: 返回一个包含两个成员的结构体
struct Jiegouti{
int a;
int b;
};
struct Jiegouti fun2(){
return{ 5, 6 };
}
int main(){
int *res1 = fun1();
struct Jiegouti res2 = fun2();
printf("%d %d\n", res1[0], res1[1]);
printf("%d %d\n", res2.a, res2.b);
free(res1);
getchar();
return 0;
}
4 运行结果
一般情况下,一个return只能返回一个值。如果您需要一次性返回多个值,那么可以有以下几种办法:
一是如果这些值的数据类型是相同的,那么可以返回包含这些值的数组;
第二种是如果这些值的类型不同,那么您可以定义包含这些数据的结构体struct,然后返回该结构体变量;
第三种是采用输出参数,即把需要返回的数据放在参数表中,以指针或引用类型以便可以将来在调用处得到这些值。希望以上回答可以帮助到您。
c语言scanf函数的返回值?
scanf函数的返回值是成功读取的参数的个数。例如,如果成功读取了两个参数,那么scanf函数的返回值就是2。若发生错误或遇到文件结束符,则返回值小于参数的个数。
C语言编程中返回值如何判断,有什么用?
所谓函数返回值是一个函数在运算结束以后向调用它的母函数或者系统反馈一个值,这个值可以是各种变量类型.举个简单的例子:
int add(int a,int b){ return (a+b);}int main(){ int res; res=add(3,4); printf("%d",res); return 0;}
在主函数main中调用子函数add,并传递参数3和4过去,add经过运算后得到值7,通过return语句将得到的值返回给调用它的main函数供其使用,而在main中,返回值被用于给res赋值。函数返回值就可以理解为解决一个问题以后得到的结论,把这个结论交给别人,就像写在书上成为一个定理,来让别人使用。
C语言中返回值是什么意思啊?怎么理解?举个例子说明,谢谢?
有参有返回就是一根函数有参数同时也有返回值例子intfint f(int a){ int sum = a + 23; return sum;}以上的return sum就是返回值了()里面int a就是函数的参数了 这属于c的函数的知识 函数的返回值和函数的参数