当前位置:首页 » 编程语言 » c语言返回值函数调用

c语言返回值函数调用

发布时间: 2024-05-31 10:33:02

c语言中调用函数的返回值,如果是数组,主函数要输出这个数组怎么实现啊

用指针,另外保存数据的变量退出函数时不得消失。

例如:

#include<stdio.h>

int * fun(int n)

{

int i;

static int a[100]; // 这里用static

for (i=0;i<n;i++) a[i]=i;

return &a[0];

}

void main()

{

int i,n=5;

int *p; // 声明指针

p = fun(n); // 返回指针

for (i=0;i<n;i++) printf("%d ",p[i]); // 把 p 看成数组来输出

}

得 0 1 2 3 4

(1)c语言返回值函数调用扩展阅读:

注意事项

1、数组宏棚的维度必须是一个常蔽段则量表达式

int main(void)

{

constexpr int i = 20;

int j = 5;//不是常量表达式

int arr1[i];//正确

int arr2[j];//错误

system("燃宏pause");

return 0;

}

2、默认情况下,数组的元素被默认初始化。

而且需要注意的是,和内置类型的变量一样,如果在函数内部定义了某种内置类型的数组,那么默认初始化会令数组有未定义的值。

㈡ c语言中调用函数如何返回多个值

1、通过使用指针,在函数调用时,传递带有地址的参数,并使用指针更改其值;这样,修改后的值就会变成原始参数。

㈢ c语言中,函数返回值怎么用

return后接数蔽一个值。 在调用这个函数的函数里面,调用它的时候希望获得一个值,如果不希望获得这个值的时候,用void声明就好。如果需要,比如说需要得到一个整形值 就声明 int func() 在调用它的比如main里面 func()的作用就可以相当于一个int型常数 比如外面定义了 int max(int a,int b) { return a>b?a:b; } 主函数里面是 main() { int A; A=max(1,2); } 这时候就是通过max计算 1>2 则return 一个1 ,谨毕孙1<2 则return一个2。很明显1<2 所以这里max(1,2)就会return 一个 2 这时候主函数里的max(1,2)就相当于一个常数 2 A=max(1,2)的作祥链用就相当于A=2 这个意思。

㈣ C语言 函数返回值是什么

函数的值(或称函数返回值)是指函数被调用之后,执行函数体中的程序段所取得的值,可以通过return语句返回。

return语句的一般形式为:
return 表达式;
或者:
return (表达式);
例如:
return max;
return a+b;
return (100+200);
函数中可以有多个 return 语句,但每次调用只能有一个return 语句被执行,所以只有一个返回值。

一旦遇到 return 语句,不管后面有没有代码,函数立即运行结束,将值返回。例如:
int func(){
int a=100, b=200, c;
return a+b;
return a*b;
return b/a;
}
返回值始终 a+b 的值,也就是300。

没有返回值的函数为空类型,用void进行说明。例如:
void func(){
printf("Hello world!\n");
}
一旦函数的返回值类型被定义为 void,就不能再接收它的值了。例如,下面的语句是错误的:
int a = func();
为了使程序有良好的可读性并减少出错, 凡不要求返回值的函数都应定义为空类型。

㈤ c语言中调用函数如何返回多个值

建立数组,返回指针。

在要返回的两个值类型相同时,可以用创建数组的方式,将要返回的值存在数组中,并返回数组首地址,这样就可以实现返回两个值的效果。需要注意的是,要返回数组首地运首掘址,那么返回的值不可以是局部变量,有如下几种是可以的:

a) 使用静态局部变量存储,并返回地址;

b) 使用全局变量存储,返回地址;

c) 函数中动态分配内存,并返回申请到的地址,此种方法需要注意,在使用后需要释放;

d) 在参数中传入数组地址,并返回。即返回的实际上是主调函数中的变量地址。

(5)c语言返回值函数调用扩展阅读

通常我们希望通过函数调用使主调函数能得到一个确定的值,这就是函数的返回值。函数的返回值是通过函数中的 return 语句获得的。return 语句将被调函数中的一个确定的值带回到主调函数中,供主调函数使用。

函数的返回值类型是在定义函数时指定的。return 语句中表达式的类型应与定义函数时指芹氏定的返回值类型一致。如果不一致,则以函数定义时的返回值类型为准,对 return 语句中表达式的类型自动进行转换,然后再将它返回给主调函数使用。

在调用函数时,如果需要从被调函数返回一个值供主调旁核函数使用,那么返回值类型必须定义成非 void 型。此时被调函数中必须包含 return 语句,而且 return 后面必须要有返回值,否则就是语法错误。

如果函数有返回值,那么 return 语句后面的括号可以不要,比如“return(z);”等价于“return z;”。若不需要返回值则可以不要 return 语句。

需要强调的是,一个函数中可以有多个 return 语句,但并不是所有的 return 语句都起作用。执行到哪个 return 语句,就是哪个 return 语句起作用,该 return 语句后的其他语句就都不会执行了。

热点内容
sql语句or和and 发布:2024-11-27 08:37:09 浏览:798
sql2005加密 发布:2024-11-27 08:32:11 浏览:740
安卓手机如何锁屏录像 发布:2024-11-27 08:31:14 浏览:98
wms源码 发布:2024-11-27 08:30:25 浏览:3
华为编译器系列 发布:2024-11-27 08:29:42 浏览:854
长江存储上海 发布:2024-11-27 08:29:31 浏览:328
crm客户管理系统源码 发布:2024-11-27 07:59:26 浏览:363
匠辰app安卓在哪里下载 发布:2024-11-27 07:47:12 浏览:731
sql表操作 发布:2024-11-27 07:46:31 浏览:813
云顶之脚本 发布:2024-11-27 07:45:37 浏览:658