首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

return 0和return 1return -1的区别「建议收藏」

在main函数,在执行的最后设置一个“return 0;”语句。当主函数正常结束时,得到的函数值为0,当执行main函数过程中出现异常或错误时,函数值为一个非0的整数。...在main函数,在执行的最后设置一个“return 0;”语句。当主函数正常结束时,得到的函数值为0,当执行main函数过程中出现异常或错误时,函数值为一个非0的整数。...return 0 代表程序正常退出,return 1代表程序异常退出! 使用return 语句可以返回一个变量内的值或一个指针,也可用return0,表示返回为空。...return 代表调到函数外, return 0代表函数正常终止 return 1代表函数非正常终止 return 关键字的作用是返回程序流程的控制权!其副作用是返回一个值。...例如int main(){}则必须返回一个值 return 0代表函数正常终止 ruturn 1代表函数非正常终止 被调函数 return 1只是给主调函数一个标志,说明他的执行过程遇到异常情况。

3.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

再谈try{ return }finally{}return

简单翻译: 如果try语句块里有return,那么代码的行为如下: 1.如果有返回值,就把返回值(如果存在)保存到局部变量 2.执行jsr指令跳到finally语句块里执行 3.执行完finally语句块后...(1)JDK自带的引用类型: (2)自定义的引用类型: 小结: (1)不管try{}、catch{}是否有return语句,finally{}都会执行,除非未执行到finally{}时,执行当前...Function的Thread被interrupted 或killed; (2)finally{}没有return语句时, 如果try{}或catch{}返回值是基本数据类型或其包装类时,finally...{}对返回值的更改,不会返回给调用方; 如果try{}或catch{}返回值是引用数据且不是基本类型的包装类时,finally{}对返回值的更改会返回给调用方; (2)finally{}return...语句会的覆盖之前try{}、catch{}return语句; (3)如果finally{}包含了return语句,即使前面的catch{}重新抛出了异常,则调用该方法的语句也不会获得catch{}

1.5K40

你真的了解try{ return }finally{}return

按一下F6,我们可以发现,程序已经执行到 return ++x;,但还没执行该语句,此刻x=1 ?...从上面过程可以看到, 在 try 里 使用 return 还是会执行finally语句的(我们用debug的模式看到了程序会条件 finally语句里执行) 执行完finally语句才执行 return...简单翻译下: 如果try语句里有return,那么代码的行为如下: 1.如果有返回值,就把返回值保存到局部变量 2.执行jsr指令跳到finally语句里执行 3.执行完finally语句后,返回之前保存在局部变量表里的值...大概讲讲指令操作顺序: iconst1: 把常数1进栈 ---> istore1: 栈顶元素出栈并把元素保存在本地变量表的第二个位置里(下标为1的位置里) ---> iinc 1, 1 : 本地变量表的第二个元素自增...1 --->iload1:第二个元素进栈 ---> istore2:栈顶元素出栈并把元素保存在本地变量表的第2个位置里 ---> iinc 1, 1 : 本地变量表的第二个元素自增1 ---> iload

1.2K50

你真的了解try{ return }finally{}return

先看一段程序 class Test { public int aaa() { int x = 1; try {...当前x的值是1,下一步: ? 这一步跳到finally,现在的x=2,说明执行了try块的 ++x,下一步: ? 又跳回try块return,当前的x=3....是不是有些疑惑 从上面过程可以看到: 在 try 里 使用 return 还是会执行finally语句的(我们用debug的模式看到了程序会跳到 finally语句里执行)执行完finally语句才执行...(其实要验证 return ++x 是分开两部分执行的方法很简单,把变量x变成static变量并在main函数里输出,会发现x的值还是3,即使两次跳到 return ++x 也只是第一次执行了加1操作,...翻译: 如果try语句里有return,那么代码的行为如下: 1.如果有返回值,就把返回值保存到局部变量 2.执行jsr指令跳到finally语句里执行 3.执行完finally语句后,返回之前保存在局部变量表里的值

1.2K40

python,exit,return,

有这样一道题目:  字符串标识符.修改例 6-1 的 idcheck.py 脚本,使之可以检测长度为一的标识符,并且可以识别 Python 关键字,对后一个要求,你可以使用 keyword 模块..." % idInput     代码完毕后,我测试每一条分支,测试到分支时,必须输入_d4%等包含非法字符的标识符才能进行测试,我最初以为,sys.exit(0)---正常退出脚本,sys.exit(1)...非正常退出脚本,但是实际情况是/9sys.exit(1),仅输出返回码不同):  if (item not in legalstring): print "%s isn't legal...return:在定义函数时从函数返回一个函数的返回值,终止函数的执行。...exit:下面的代码,如果把sys.exit()替换成exit,则exit仅仅跳出离它最近的for循环, print "%s is legal identifier for Python!

1.1K20

JavaScriptreturn await promise 与 return promise

原文地址:'return await promise' vs 'return promise' in JavaScript 原文作者:Dmitri Pavlutin 译文出自:掘金翻译计划 当从异步功能返回时...,您可以等待该承诺得到解决,或者您可以直接返回它:return await promise return promise: async function func1() { const promise...1. 相同行为 为了找到两个表达式(与)的区别,(return await promise vs return promise), 我要使用辅助功能。 delayedDivide(n1, n2)....在此步骤,您已经看到使用和没有区别 return await promise and return promise 至少在处理成功履行承诺时。 但是,让我们搜索更多! 2....return await promiseawait `catch(error) {...}声明捕获只等待拒绝的承诺在声明。try {...} 喜欢这个帖子?请分享!

2K20

PHPexit,exit(0),exit(1),exit(‘0’),exit(‘1’),die,return的区别

参考:虽然两者相同,但通常使用也有细微的选择性。 当传递给exit和die函数的值为0时,意味着提前终止脚本的执行,通常用exit()这个名字。...同样的die(‘1’)也通exit(‘1’)一样,输出1 echo "begin"; die('1'); echo "end"; //输出begin1 exit(1) 不输出内容,结束程序 echo "...; exit('1'); echo "end"; //输出begin1 return 返回值,后续的程序也不执行,值并不输出 echo "begin"; return 1; echo "end"; //...输出begin,return的值没有输出到屏幕,而是返回给了上一层 总结: return 是返回值 die是遇到错误才停止 exit 是直接停止,并且不运行后续代码, exit ()可以显示内容。...return 就是纯粹的返回值了,但是也不会运行后续代码 exit (0):正常运行程序并退出程序; exit (1):非正常运行导致退出程序; 发布者:全栈程序员栈长,转载请注明出处:https://

1.6K20

pythonreturn如何写

pythonreturn的用法 1return语句就是把执行结果返回到调用的地方,并把程序的控制权一起返回 程序运行到所遇到的第一个return即返回(退出def块),不会再运行第二个return。...例如: defhaha(x,y): ifx==y: returnx,y print(haha(1,1)) 结果:这种return传参会返回元组(1,2) 2、但是也并不意味着一个函数体只能有一个return...递归函数没有return 的情况: defrecurve(a,b): ifa%b==0: returnb else: gcd(b,a%b) 分析:else 没有 return 就没有出口,这个程序是自己内部运行...def F1 ( x, y ): a = x % y b = (x-a) / y return ( a,b ) # 也可以写作 return a, b (c, d )= F1( 9,...4) # 也可以写作 c , d = F1 ( 9, 4 ) print c ,d 结果显示: 1, 2 到此这篇关于pythonreturn如何写的文章就介绍到这了,更多相关pythonreturn

1.1K20

python return换行(python的换行)

a = 1b = … 强制设置 (空格)代替n(换行) print(n)# 换行print(***20) str1 =猿说pythonprint(len(str1):%d % len(str1))for...重点总结1.for循环中continue和… 11.python for循环最后更新于:2019-09-25 10:12:11在python开发,除了前篇文章介绍的while循环还有一个for循环也经常使用...例如: 在含有小括号,括号,花括号时可以多行书写 . 另外就是三引号包括下的字符串也可以跨行书写 ....1 + 2j、 1.1 +2.2j(2)字符串(字符的序列)python单引号和双引号使用完全相同。...记不记得c和java的&&和||、! 这些逻辑运算符,在python中有多个条件时用and和or判断,还有not。? python的elif相当于c和java的else if,这需要注意!

7K20

Linux2>&1的含义

A Linux0、1、2的含义 名称 代码 操作符 Java中表示 Linux 下文件描述符(Debian 为例) 标准输入(stdin) 0 /proc/self/fd/0 -> /dev/pts/0 标准输出(stdout) 1 >, >>, 1> 或 1>> System.out /dev/stdout -> /proc/self/...不能写成2&>1 C 为什么2>&1要放在后面 例子:nohup java -jar app.jar >log 2>&1 & 最后一个&表示把这条命令放后台运行 问题:为什么2>&1放在>log后面??...回答: 我们不妨把1和2都理解是一个指针,那么这么想 本来1->屏幕(1指向屏幕) 执行>log后,1->log(1指向log) 执行2>&1后,2->1(2指向1,而1指向log,因此2也指向了...log) 那么再分析一下nohup java -jar app.jar 2>&1 >log & 本来1->屏幕 执行2>&1后,2->1(2也指向屏幕) 执行>log后,1->log(这时候1指向log

93350
领券