zoukankan      html  css  js  c++  java
  • Linux编程return与exit区别

    Linux编程return与exit区别

    exit  是用来结束一个程序的执行的,而return只是用来从一个函数中返回。

    return

    return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定,当然如果是在主函数main, 自然也就结束当前进程了,如果不是,那就是退回上一层调用。

     

    return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。

     

    如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。

     

    如果实在不需要函数返回什么值,就需要用void声明其类型。

     

    补充:如果你函数名前有返回类型定义,如int,double等就必须有返回值,而如果是void型,则可以不写return,但这时即使写了也无法返回数值的

     

    例如:

     

    1、非void型

     

    int f1()

     

    {

     

    int i=1;

     

    return 1;

     

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

     

    }

     

    2、void型

     

    void f2()

     

    {

     

    int i=1;

     

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

     

    }

     

    有时即使被调用函数是void类型被调函数中的return也不是毫无意义的

     

    举例:

     

    #include "stdio.h"

     

    void function()

     

    {printf("111111");

     

    return;

     

    printf("222222");

     

    }

     

    main()

     

    {function();

     

    }

     

    运行结果为:屏幕上只输出一串数字111111而没有222222。但是如果去掉function函数中的return语句,就可以同时输出一串数字222222。

     

    exit()

    exit(0)表示正常退出执行程序,如果加其它的数值:1,2,....可以表示由于不同的错误原因而退出 。 

    那么,1,2,3怎么对应不同的原因?   --你自己想让它是什么意思,它就是什么意思  

      但一般都有常用的、通用的含义:比如   0   一般都表示正常返回、退出。

    因此,,在main函数中exit(0)等价于return 0。

  • 相关阅读:
    在Visual Studio中使用正则表达式匹配换行和批量替换
    Microsoft Visual Studio Ultimate 2013 Update 2 RC 英文版--离线完整安装ISO+简体中文语言包
    TFS 2012 在IE11和Chrome (Windows 8.1) 显示英文的解决方案
    Windows 8 应用商店无法连接到网络的终极完美解决方案
    Visual Studio 2012 Update 4 RC 启动调试失败解决方案
    2013最新版Subversion 1.7.10 for Windows x86 + Apache 2.4.4 x64 安装配置教程+错误解决方案
    PKCS#1
    密钥协商机制
    base64的编码
    认证过程
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3190050.html
Copyright © 2011-2022 走看看