C语言中return怎么用,主函数中一定要用吗?

2024年11月16日 18:06
有4个网友回答
网友(1):

return,从函数调用执行中返回,可以分两种情况:

1、void型

例如:

void f2()

{

int i=1;

//return;//这样也可以,不要这一句也可以

}

2、非void型

例如:

int f1()

{

int i=1;

return 1;

//return(i); //这样也可以

}

有时即使被调用函数是void类型 被调函数中的return也不是毫无意义的;对于void,在函数的最后一行代码,可以不用;其他地方,因为你要返回函数调用,所以必须要用。

对于非void,既然函数返回值类型定义为非void,那么肯定需要使用这个函数的返回值。比如返回值是函数运行结果,或者表明函数运行结果是成功还是失败。这种情况,即使是函数最后一行,也需要使用。

对于有些情况,没有return,编译器也不会报错,比如main函数(编译器会默认返回值为0,假设你的main函数返回值是int)。但是为了保持良好的习惯,还是建议使用。

比如你写的程序编译后需要在脚本中调用,我们可以通过检查你的程序的结束代码来判断你的程序的执行情况,成功或是失败。这时候的检查就依赖于你是否在main函数中正确使用了return。

扩展资料:

举例:

#include "stdio.h"

void function()

{printf("111111");

return;

printf("222222");

}

main()

{

function();

}

运行结果为:屏幕上只输出一串数字1 而没有2。 但是如果去掉function函数中的return语句 就可以同时输出一串数字2。这里的return其实还有个退出该程序的作用!也就是说在printf("111111");后面加了个return,就表示结束该函数,返回主函数中去了!

参考资料

百度百科_return(C语言语句)

网友(2):

return,顾名思义,从函数调用执行中返回,可以分两种情况:
1)void
2)非void

对于void,在函数的最后一行代码,可以不用;其他地方,因为你要返回函数调用,所以必须要用。
对于非void,既然函数返回值类型定义为非void,那么肯定需要使用这个函数的返回值。比如返回值是函数运行结果,或者表明函数运行结果是成功还是失败。这种情况,即使是函数最后一行,也需要使用。

对于有些情况,没有return,编译器也不会报错,比如main函数 (编译器会默认返回值为0,假设你的main函数返回值是int)。但是为了保持良好的习惯,还是建议使用。比如你写的程序编译后需要在脚本中调用,我们可以通过检查你的程序的结束代码来判断你的程序的执行情况,成功或是失败。这时候的检查就依赖于你是否在main函数中正确使用了return。

网友(3):

在C语言中,return语句的作用是返回函数的值,如下代码:

#include
int f(int a)  //定义函数f()
{
    return a*2;  //返回值a*2
}
int main()  //定义main()的类型为int
{
    int a;
    scanf("%d",&a);
    printf("%d\n",f(a));  //调用函数f(),并输出函数的返回值
    return 0;
}

在上述程序中的fun()函数中,利用return语句返回值a*2的值,在main()主函数中,因为定义其类型为int(整型),所以返回值0,以检测是否运行正常。

当然,在C语言中,如果定义函数的类型为void(无类型),则无需运用return语句,main()主函数也一样,如下代码:

#include
void f(int a)  //定义函数f()
{
    printf("%d\n",a*2);  //输出a*2的值
}
void main()  //定义main()的类型为void
{
    int a;
    scanf("%d",&a);
    f(a);  //调用函数f()
}

两个程序的作用相同,都是输出所输入数据的两倍,区别在于函数的类型。

网友(4):

Return是程序的返回值,void 开头的函数不需要return,如void main()