网站的构建,杭州专业网站制作,动态页面设计,电商网站建设基础pptFrom: http://blog.163.com/liuqiang_mail126/blog/static/109968875201241210473787/
退出和返回 退出状态(exit status) 函数返回一个被称为退出状态的值. 退出状态可以由return 来指定statement, 否则函数的 退出状态是函数最后一个执行命令的退出状态(0 表示成功,非0 表示…From: http://blog.163.com/liuqiang_mail126/blog/static/109968875201241210473787/
退出和返回 退出状态(exit status) 函数返回一个被称为退出状态的值. 退出状态可以由return 来指定statement, 否则函数的 退出状态是函数最后一个执行命令的退出状态(0 表示成功,非0 表示出错代码). 退出状态 (exit status)可以在脚本中由$? 引用. 这个机制使脚本函数也可以像C 函数一样有一个 返回值. return 终止一个函数.return 命令[1]可选地带一个整数参数,这个整数作为函数的返回值返回 给调用此函数的脚本,并且这个值也被赋给变量$?. exit函数和return函数的主要区别是 1exit用于在程序运行的过程中随时结束程序其参数是返回给OS的。也可以这么讲exit函数是退出应用程序,并将应用程序的一个状态返回给OS这个状态标识了应用程序的一些运行信息。 main函数结束时也会隐式地调用exit函数exit函数运行时首先会执行由atexit()函数登记的函数然后会做一些自身的清理工作同时刷新所有输出流、关闭所有打开的流并且关闭通过标准I/O函数tmpfile()创建的临时文件。 exit是系统调用级别的它表示了一个进程的结束它将删除进程使用的内存空间同时把错误信息返回父进程。通常情况exit(0)表示程序正常, exit(1)和exit(-1)表示程序异常退出exit(2)表示系统找不到指定的文件。 2return是语言级别的它表示了调用堆栈的返回return是返回函数值并退出函数通常0为正常退出非0为非正常退出请注意如果是在主函数main, 自然也就结束当前进程了也就是说在main()里面你可以用return n也能够直接用exit(n)来做如果不是在main函数中那就是退回上一层调用。在多个进程时如果有时要检测上个进程是否正常退出就要用到上个进程的返回值。 2、进程环境与进程控制 如果exit(int n)是在main函数里被调用的那么exit(int n)就直接退出程序并返回一个int型的值。一般在shell下面运行一个程序然后使用命令echo $?就能得到该程序的返回值也就是退出值。理论上exit可以返回小于256的任何整数返回的不同数值主要是给调用者作不同处理的。 对于单独的进程exit的返回值是返回给操作系统的但如果是多进程则是返回给父进程的。父进程里面调用waitpid()等函数得到子进程退出的状态以便作不同处理。根据相应的返回值来让调用者作出相应的处理。 总的说来exitint n就是当前进程把其控制权返回给调用该子程序的主程序, 括号里的是返回值,告诉调用程序该程序的运行状态。