有关“return 0”和“return 1”的辨析

有关“return 0”和“return 1”的辨析
有关“return 0”和“return 1”的辨析

有关“return 0”和“return 1”的辨析

观点1:

return是一个返回语句,return后面的值将作为函数的返回值。例如,当我们编写了一个计算三角形周长的函数时,那么函数的最后就应该通过return 语句返回计算结果。

至于C语言/C++中的最后总有return 0 或 return 1语句,这是有特殊原因的。因为根据ANSI标准,程序的主函数main应该返回一个int值。这个值将传递给操作系统,一些批处理程序可以捕获它并处理。一般而言,return 0代表正常退出了。当然,在大多数编译器下,把main函数声明为void型也是没问题的,此时,程序最后就不会出现return语句了。

观点2:

“return 0”是正常退出,“return 非零”是异常退出,这是返回给控制台的,不在我们编写的程序的控制范围内,是给操作系统识别的,对我们的程序无影响。如果是C中,定义void main()可以不用返回值。具体操作系统怎么处理0和非零,我也不知道,也没必要了解,因为与你的程序无关。

观点3:

一般windows程序员认为“return 0”是正常返回,“return 1”是非正常返回(即可能出错或异常),但这个只是标志的规定,事实上return 0和return 1的使用是按照公司的编码规定分别作出解释的,也可以两个都是正常的,不过比较常用的还是最初说的那种情况。

观点4:

return 关键字的作用是返回程序流程的控制权,其副作用是返回一个值!被调函数 return 1;只是给主调函数一个标志,说明他的执行过程中遇到异常情况,然后就返回主调函数来处理和继续执行。在C语言/C++里面,0代表正常中止,非零都是异常,但是这些都只是一个习惯用法,你也可以在正常的时候返回1,用它来执行其它用途。

观点5:

return; 跳到主调函数中;

return 0; 代表函数正常终止;

return 非零数; 代表函数异常终止;

他们的含义是“return”只是函数的跳出点,终止不是真的程序终止。

return的用法和短语例句是什么意思

return的用法和短语例句是什么意思 return有返回;归还;回报;回应;申报等意思,那么你知道return 的用法吗?下面跟着一起来学习return的用法和短语例句吧,希望对大家的学习有所帮助! return的用法1:return的基本意思是“回到原来的位置或状态”,可指人、物回到某处,也可指某人把某物送还,归还给某人,还可指病痛、情绪等的复发、状态的恢复、季节的再次来临等。 return的用法2:return的现在进行时可表示按计划或安排将要发生的动作,此时须有表示将来的时间状语或特定的上下文。 return的用法3:return用作及物动词时,可接名词、代词或that 从句作宾语,还可接双宾语,其间接宾语可转化为介词to的宾语。 return的用法4:return还可用作系动词,意思是“恢复”“回来”,后可接名词或形容词作表语。 return的用法5:return是瞬间动词,不能与表示一段时间的状语连用。 return的用法6:return用作名词的基本意思是“返回,回来,恢复”,指重新回到或返回原来的位置或状态,可用作可数名词,也可用作不可数名数。引申还可作“归还”“回报”解,是不可数名词。 return的用法7:return还可作“利润”“收益”解,是可数名词。 return的常用短语用作动词(v.)

return for (v.+prep.) return from (v.+prep.) return to (v.+prep.) return with (v.+prep.) 用作名词(n.) by return in return (for) on one's return return to to return return的用法例句1. I will return, find you, love you, marry you and live without shame. 我会回去,找到你,爱你,娶你,活的光明正大。《赎罪》 2. Ellery's return will help to chase away some of the gloom. 埃勒里的归来可以驱散一些抑郁的情绪。 3. Return the enclosed Donation Form today in the prepaid envelope provided. 请于今日将随函附上的捐款表格用所提供的邮资预付的信封寄回。 4. Ford never desisted from trying to persuade him to return to America.

c语言if后面return的用法详细解析

c语言if后面return的用法详细解析 return是C++预定义的语句,它提供了种植函数执行的一种放大。今天在这里为大家介绍c语言if后面return的用法,欢迎大家阅读! 在C89 中,main( ) 是可以接受的。Brian W. Kernighan 和Dennis M. Ritchie 的经典巨著The C programming Language 2e(《C 程序设计语言第二版》)用的就是main( )。不过在最新的C99 标准中,只有以下两种定义方式是正确的: int main( void ) int main( int argc, char *argv[] ) (参考资料:ISO/IEC 9899:1999 (E) Programming languages - C 5.1.2.2.1 Program startup) 当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成char **argv;argv 和argc 可以改成别的变量名(如intval 和charval),不过一定要符合变量的命名规则。 如果不需要从命令行中获取参数,请用int main(void) ;否则请用int main( int argc, char *argv[] ) 。 main 函数的返回值类型必须是int ,这样返回值才能传递给程序的激活者(如操作系统)。 如果main 函数的最后没有写return 语句的话,C99 规定编

译器要自动在生成的目标文件中(如exe 文件)加入return 0; ,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。注意,vc6不会在目标文件中加入return 0; ,大概是因为vc6 是98 年的产品,所以才不支持这个特性。现在明白我为什么建议你最好加上return 语句了吧!不过,gcc3.2(Linux 下的C 编译器)会在生成的目标文件中加入return 0; 。 c语言if后面return的用法:C++C++98 中定义了如下两种main 函数的定义方式: int main( ) int main( int argc, char *argv[] ) (参考资料:ISO/IEC 14882(1998-9-01)Programming languages - C++ 3.6 Start and termination) int main( ) 等同于C99 中的int main( void ) ;int main( int argc, char *argv[] ) 的用法也和C99 中定义的一样。同样,main 函数的返回值类型也必须是int。如果main函数的末尾没写return 语句,C++98 规定编译器要自动在生成的目标文件中加入return 0; 。同样,vc6 也不支持这个特性,但是g++3.2(Linux 下的C++ 编译器)支持。 c语言if后面return的用法:关于void main在C 和C++ 中,不接收任何参数也不返回任何信息的函数原型为“void foo(void);”。可能正是因为这个,所以很多人都误认为如果不需要程

Java中return的用法

一般的就是用在有反回值的方法中,用来返回方法指定类型的值,同时结束方法执行;也可以用在返回值为void的方法中,用来终止方法运行; 如: public void f(){ for(int i=0;;i++){ if(i==3){ return; }else{ System.out.println(i); } } } 功能: 1. 返回方法制定类型的值 2. 结束方法的执行(仅仅一个"return;”) 下面通过一个简单的例子说明下(网络上的例子,自己感觉看了听明白): /* return方法总结 */ public class TestReturn { public static void main(String args[]) { TestReturn t = new TestReturn(); t.test1(); t.test2(); } /** * 无返回值类型的return语句测试 */ public void test1() { System.out.println("---------无返回值类型的return语句测试--------"); for (int i = 1; ; i++) { if (i == 4) return; System.out.println("i = " + i); } } /** * 有返回值类型的return语句测试 * @return String */ public String test2(){

System.out.println("---------有返回值类型的return语句测试--------"); return "返回一个字符串"; } } 运行结果: ---------无返回值类型的return语句测试-------- i = 1 i = 2 i = 3 ---------有返回值类型的return语句测试------- 返回一个字符串

finally语句块与return的执行关系

这是一道Java面试题:try{ }里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,什么时候被执行,在return前还是后?(如果try后面有个catch块,里面有return语句,那么finally语句会不会执行?) finally语句块的作用就是为了保证无论出现什么情况,一定要执行的,那么finally里的code 肯定会执行,并且是在return前执行。(只要语句执行了,肯定是在return前执行的。finally 中也可以有return,并且会覆盖其他的return) 根据java规范:在try-catch-finally中,如果try-finally或者catch-finally 中都有return,则两个return语句都执行并且最终返回到调用者那里的是finally中return的值;而如果finally中没有return,则理所当然的返回的是try或者catch中return的值,但是finally中的代码是必须要执行的,方法在return的时候并不是把它所拥有的那个值给返回了,而是复制一份返回!因此,对于基本类型的数据,在finally中改变return的值对返回值没有任何影响,而对于引用类型的数据,就有影响。(JAVA中基本类型变量存储在___中,引用类型的对象存储在____中,对象的引用地址存储在____中。 A. 堆 B. 栈 C. 寄存器 D. 静态存储区 BBA 基本类型和对象的引用都放在栈中,new出的对象和数组放在堆中 ) public class FinallyTest { public static void main(String[] args) { System.out.println("x的值是"+new FinallyTest().test());; } @SuppressWarnings("finally") static int test() { int x = 1; try { //x++; return x; } finally { ++x; System.out.println("x的值当前值是" +x);

TRY里面有RETURN语句

java中异常处理中return的用法关于try、catch、finally语句块中含有return语句的几点说明: 1、第一种情况:try块有return语句,catch块没有return,函数末尾也没有return: 看代码: import java.util.*; public class demo{ public static void main(string args[]){ int num = 10; test(num); } public static int test(int b){ try{ b += 10; return b; }catch(exception e){ }finally{ } } } 编译结果: h:\java demo>javac demo.java demo.java:18: 缺少返回语句 } ^ 1 错误 有人可能会说,我在try块中不是有return语句吗?为什么会提示缺少return语句呢?这是因为编译器认为try块中是又可能产生异常操作 的,也就是说在return语句之前如果出现异常的话,那么return语句根本没有机会得到执行,所以编译器会认为缺少return语句。 解决办法:a、在catch块中加入return语句,因为一旦出现异常,catch中的语句可以保证函数会有一个返回值 b、在finally块中加入return语句,同样只要系统不退出,finally语句块会始终得到执行的 代码: import java.util.*; public class demo{ public static void main(string args[]){ int num = 10; system.out.println(test(num)); } public static int test(int b){ try{ b += 10; return b;

浅谈C语言return语句和main 函数的返回值

浅谈C语言return语句和main 函数的返回值 在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。 return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值。 说到return,有必要提及主函数的定义,下面是从网络上找到的资料,好好消化吧,对了解主函数中返回值的理解有很大的帮助。 很多人甚至市面上的一些书籍,都使用了void main(),其实这是错误的。C/C++ 中从来没有定义过void main()。C++ 之父Bjarne Stroustrup 在他的主页上的FAQ 中明确地写着The definiTIon void main(){ /* 。。。*/ } is not and never has been C++,nor has it even been C.(void main()从来就不存在于C++ 或者C )。下面我分别说一下 C 和C++ 标准中对main 函数的定义。 1. C 在C89 中,main()是可以接受的。Brian W. Kernighan 和Dennis M. Ritchie 的经典巨著The C programming Language 2e(《C 程序设计语言第二版》)用的就是main()。不过在最新的C99 标准中,只有以下两种定义方式是正确的: int main(void ) int main(int argc,char *argv[]) (参考资料:ISO/IEC 9899:1999 (E)Programming languages C 5.1.2.2.1 Program startup)当然,我们也可以做一点小小的改动。例如:char *argv[]可以写成char **argv;argv 和argc 可以改成别的变量名(如intval 和charval),不过一定要符合变量的命名规则。 如果不需要从命令行中获取参数,请用int main(void);否则请用int main(int argc,char *argv[])。

JavaScript中return的用法详解

JavaScript中return的用法详解 1、定义 return,从字面意思来看就是返回,官方定义return语句将终止当前函数并返回当前函数的值;可以看下下面的示例代码: Title 可以看到我在函数里面写了一个死循环,然后在下面调用,在没有写return语句时浏览器会一直执行循环内的语句,直接卡死;

而写了return语句后,直接中断了函数,并且给函数返回了一个数值1,意思就是当函数执行后,函数体将被赋值为函数的返回值,这里会被返回1; 2、写法 官方定义return后面可以跟一个value,也就是说可以跟javascript中的任何数据类型,数字,字符串,对象等,当然也可是再返回一个函数,举个栗子: Title 14 15 16 17 18 示例图片: 当然是函数就可以调用,我们可以写成!func1()();这里很好理解,func1();我们打印出来看了就是return后面跟的匿名函数,那么我们就可以通过自执行函数的形式来调用,这里通过!函数体();的形式来调用。可以将注释里的代码拿出来试验一下: 3、练习

有关“return 0”和“return 1”的辨析

有关“return 0”和“return 1”的辨析 观点1: return是一个返回语句,return后面的值将作为函数的返回值。例如,当我们编写了一个计算三角形周长的函数时,那么函数的最后就应该通过return 语句返回计算结果。 至于C语言/C++中的最后总有return 0 或 return 1语句,这是有特殊原因的。因为根据ANSI标准,程序的主函数main应该返回一个int值。这个值将传递给操作系统,一些批处理程序可以捕获它并处理。一般而言,return 0代表正常退出了。当然,在大多数编译器下,把main函数声明为void型也是没问题的,此时,程序最后就不会出现return语句了。 观点2: “return 0”是正常退出,“return 非零”是异常退出,这是返回给控制台的,不在我们编写的程序的控制范围内,是给操作系统识别的,对我们的程序无影响。如果是C中,定义void main()可以不用返回值。具体操作系统怎么处理0和非零,我也不知道,也没必要了解,因为与你的程序无关。 观点3: 一般windows程序员认为“return 0”是正常返回,“return 1”是非正常返回(即可能出错或异常),但这个只是标志的规定,事实上return 0和return 1的使用是按照公司的编码规定分别作出解释的,也可以两个都是正常的,不过比较常用的还是最初说的那种情况。 观点4: return 关键字的作用是返回程序流程的控制权,其副作用是返回一个值!被调函数 return 1;只是给主调函数一个标志,说明他的执行过程中遇到异常情况,然后就返回主调函数来处理和继续执行。在C语言/C++里面,0代表正常中止,非零都是异常,但是这些都只是一个习惯用法,你也可以在正常的时候返回1,用它来执行其它用途。 观点5: return; 跳到主调函数中; return 0; 代表函数正常终止; return 非零数; 代表函数异常终止; 他们的含义是“return”只是函数的跳出点,终止不是真的程序终止。

总结Java中return语句的用法

总结Java中return语句的用法Java中的return语句总是和方法有密切关系,return语句总是用在方法中,有两 个作用,一个是返回方法指定类型的值(这个值总是确定的),一个是结束方法的执行(仅仅一个return语句)。 在return语句的各类文章中,大多仅仅介绍了return语句用于有返回值(非void返回值)的方法中。而很少或没有介绍return语句在vodi返回值方法中的运用。 return语句用在非void返回值类型的方法中,不但能返回基本类型,还可以返回(包括用户自定义类的)对象。 下面通过一个简单例子说明一下: /** * Created by IntelliJ IDEA. * User: leizhimin * Date: 2007-12-3 * Time: 8:54:28 * Java中的return语句使用总结 */ public class TestReturn { public static void main(String args[]) { TestReturn t = new TestReturn(); t.test1(); t.test2(); } /** * 无返回值类型的return语句测试 */ public void test1() { System.out.println("---------无返回值类型的return语句测试--------"); for (int i = 1; ; i++) { if (i == 4) return; System.out.println("i = " + i); } } /** * 有返回值类型的return语句测试

关于C语言中return的一些总结

关于C语言中return的一些总结 return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值. 说到return,有必要提及主函数的定义,下面是从网络上找到的资料,好好消化吧,对了解主函数中返回值的理解有很大的帮助. 很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。C++ 之父Bjarne Stroustrup 在他的主页上的FAQ 中明确地写着The definition void main( ) { /* ... */ } is not and never has been C++, nor has it even been C.(void main( ) 从来就不存在于C++ 或者C )。下面我分别说一下 C 和C++ 标准中对main 函数的定义。 1. C 在C89 中,main( ) 是可以接受的。Brian W. Kernighan 和Dennis M. Ritchie 的经典巨著The C programming Language 2e(《C 程序设计语言第二版》)用的就是main( )。不过在最新的C99 标准中,只有以下两种定义方式是正确的: int main( void ) int main( int argc, char *argv[] ) (参考资料:ISO/IEC 9899:1999 (E) Programming languages — C 5.1.2.2.1 Program startup) 当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成char **argv;argv 和argc 可以改成别的变量名(如intval 和charval),不过一定要符合变量的命名规则。 如果不需要从命令行中获取参数,请用int main(void) ;否则请用int main( int argc, char *argv[] ) 。main 函数的返回值类型必须是int ,这样返回值才能传递给程序的激活者(如操作系统)。 如果main 函数的最后没有写return 语句的话,C99 规定编译器要自动在生成的目标文件中(如exe 文件)加入return 0; ,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。注意,vc6不会在目标文件中加入return 0; ,大概是因为vc6 是98 年的产品,所以才不支持这个特性。现在明白我为什么建议你最好加上return 语句了吧!不过,gcc3.2(Linux 下的C 编译器)会在生成的目标文件中加入return 0; 。 2. C++ C++98 中定义了如下两种main 函数的定义方式: int main( ) int main( int argc, char *argv[] ) (参考资料:ISO/IEC 14882(1998-9-01)Programming languages — C++ 3.6 Start and termination) int main( ) 等同于C99 中的int main( void ) ;int main( int argc, char *argv[] ) 的用法也和C99 中定义的一样。同样,main 函数的返回值类型也必须是int。如果main函数的末尾没写return语句,C++98 规定编译器要自动在生成的目标文件中加入return 0; 。同样,vc6 也不支持这个特性,但是g++3.2(Linux 下的C++ 编译器)支持。 3. 关于void main 在C 和C++ 中,不接收任何参数也不返回任何信息的函数原型为“void foo(void);”。可能正是因为这个,所以很多人都误认为如果不需要程序返回值时可以把main函数定义成void main(void) 。然而这是错误的!main 函数的返回值应该定义为int 类型,C 和C++ 标准中都是这样规定的。虽然在一些编译器中,void main 可以通过编译(如vc6),但并非所有编译器都支持void main ,因为标准中从来没有定义过void main 。g++3.2 中如果main 函数的返回值不是int 类型,就根本通不过编译。而gcc3.2 则会发出警告。所以,如果你想你的程序拥有很好的可移植性,请一定要用int main 。

C语言中main函数return的总结

C语言中main函数return的总结 在函数中,如果碰到return 语句,那么程序就会 返回调用该函数的下一条语句执行,也就是说跳出函数 的执行,回到原来的地方继续执行下去。但是如果是在 主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。 -------------------------------------------------------------------------------------------------------------------------------------------------------------------- return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值. 说到return,有必要提及主函数的定义,下面是从网络上 找到的资料,好好消化吧,对了解主函数中返回值的理解 有很大的帮助. 很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( )

{ /* ... */ } is not and never has been C++, nor has it even been C.( void main( ) 从来就不存在于 C++ 或者 C )。下面我分别说一下 C 和 C++ 标准中对 main 函数的定义。 1. C 在 C89 中,main( ) 是可以接受的。Brian W. Kernighan 和 Dennis M. Ritchie 的经典巨著 The C programming Language 2e(《C 程序设计语言第二版》)用的就是 main( )。不过在最新的 C99 标准中,只有以下两种定义方式是正确的: int main( void ) int main( int argc, char *argv[] ) (参考资料:ISO/IEC 9899:1999 (E) Programming languages — C 5.1.2.2.1 Program startup) 当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成 char **argv;argv 和 argc 可以改成别的变量名(如 intval 和 charval),不过一定要符合变量的命名规则。 如果不需要从命令行中获取参数,请用int main(void) ;否则请用int main( int argc, char *argv[] ) 。 main 函数的返回值类型必须是 int ,这样返回值才能

相关文档
最新文档