void函数可以return吗中return1什么意思

PHP中return用法详细解读
PHP中return用法详细解读
来源: | 时间: 10:13:44 | 阅读数:
[导读] 在大部分编程语言中,return关键字可以将函数的执行结果返回,PHP中return的用法也大同小异,对初学者来说,掌握PHP中return的用法也是学习PHP的一个开始。首先,它的意思就是返回;return()是语言结构而不是函数
在大部分编程语言中,return关键字可以将函数的执行结果返回,PHP中return的用法也大同小异,对初学者来说,掌握PHP中return的用法也是学习PHP的一个开始。
首先,它的意思就是返回;return()是语言结构而不是函数,仅在参数包含表达式时才需要用括号将其括起来。当返回一个变量时通常不用括号,这样可以降低PHP的负担。
基本用法:
a)、return expression // 返回一个表达式结果
b)、return(expr) // 函数表达式
c)、return // 直接返回,或返回空值
注意:最好不要用return($val)这种方式。
1、如果执行了return,则return 语句后面的内容将不会被执行了;
function add($a,$b){
return $a+$b;
return $a*$b;
$c = add(5,3);//得到的$c值可以用在程序的其他地方!
输出结果:8,只执行$a+$b,$a*$b没有被执行。
2、return 可以是函数返回值,也可以返回一个空值,这要看具体用法,例如:
function test($a){
if($a&10){
return &a&10&;
return &a&10&;
在这个例子当中,当你调用这个函数的时候,然后给一个任何的数字,它都会返回一个字符串,而代码:
将永远不会被执行。
3、关于return的调用。
a.php如下:
include(&b.php&);
b.php如下:
输出结果: ba。
a.php如下:
include(&b.php&);
b.php如下:
// 结束整个当前脚本
输出结果:a。
4、return的一个重要作用:返回值
function test(){
$a=array(1,2);
return $a;
$b=test();
print_r($b);
function test(){
$a=array(1,2);
$b=test();
print_r($b);
输出结果:例子1正常输出,例子2输出为空。为什么呢?因为如果不在函数rest()里面用return返回值,则函数里面只有过程,而没有结果给rest(),调用该函数的时候当然不会有值输出。当然,我们也可将print_r($b)写进test()里面,直接在函数里打印,但很多时候,我们都会在函数外面调用操作,所以要用return返回一个值给外面。
希望本文所述对大家的php程序设计有所帮助。
手机扫描下方二维码,关注php100官方微信。
同步官网每日更新,为您带来随时随地的资讯与技术信息。更有不定期的互动抽奖活动,赢取实用贴心的小礼物。
除非特别声明,PHP100新闻均为原创或投稿报道,转载请注明作者及原文链接原文地址:
友情链接与合作伙伴
粤ICP备号-32012年11月 挨踢职涯大版内专家分月排行榜第二2011年9月 Linux/Unix社区大版内专家分月排行榜第二
2012年1月 Linux/Unix社区大版内专家分月排行榜第三2011年8月 C/C++大版内专家分月排行榜第三2011年8月 Linux/Unix社区大版内专家分月排行榜第三2010年4月 C/C++大版内专家分月排行榜第三
2012年11月 挨踢职涯大版内专家分月排行榜第二2011年9月 Linux/Unix社区大版内专家分月排行榜第二
2012年1月 Linux/Unix社区大版内专家分月排行榜第三2011年8月 C/C++大版内专家分月排行榜第三2011年8月 Linux/Unix社区大版内专家分月排行榜第三2010年4月 C/C++大版内专家分月排行榜第三
2013年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第七
本帖子已过去太久远了,不再提供回复功能。C++中的return语句是函数中一个重要的语句,return语句用于结束当前正在执行的函数,并将控制权返回给调用此函数的函数。
return语句有两种形式:
1、没有返回值的函数
不带返回值的return语句只能用于返回类型为void的函数,return语句是为了引起函数的强制结束,这种用法类似于循环结构中的break语句的作用。
void swap(int &v1,int &v2)
if(v1==v2)
int temp=v2;v2=v1;v1=}
返回类型为void的函数通常不能使用第二种形式的return语句,便是,它可以返回另一个返回类型同样是void的函数的调用 结果:
void do_swap(int &v1,int &v2)
{int temp=v2;
void swap(int &v1,int &v2)
if(v1==v2)
return false;return do_swap(v1,v2)}
2、具有返回值的函数
任何返回类型不是void的函数都必须返回一个值,而且这个返回值的类型必须和函数的返回类型相同,或者能隐式转化为函数的返回类型。
尽管C++不能确保结果的正确性,便能保证函数每一次return都返回适当类型的结果。例如,下面的程序就不能通过编译:
阅读(...) 评论()比特客户端
您的位置:
详解大数据
详解大数据
详解大数据
详解大数据
解析C语言中return如何使用
关键字:C语言
  概念:return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。
  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;
  有时即使被调用函数是void类型 被调函数中的return也不是毫无意义的
  举例:
  #include “stdio.h”
  void function()
  printf(“111111”);
  printf(“222222”);
  main()
  function();
  运行结果为:屏幕上只输出一串数字1 而没有2. 但是如果去掉function函数中的return语句 就可以同时输出一串数字2
  这里的return其实还有个退出该程序的作用!也就是说在printf(“111111”);后面加了个return,就表示结束该函数,返回主函数中去了!
  2 关于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 函数的定义。
  在 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[] )
  (参考资料:/IEC
(E) Programming languages - C 5.1.2.2.1 Program startup)
  当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成 char **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( 下的 C 编译器)会在生成的目标文件中加入 return 0; .
  2. C++
  C++98 中定义了如下两种 main 函数的定义方式:
  int main( )
  int main( int argc, char *argv[] )
  (参考资料:ISO/IEC -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 .
  4. 返回值的作用
  main 函数的返回值用于说明程序的退出状态。如果返回 0,则代表程序正常退出,否则代表程序异常退出。下面我们在 winxp 环境下做一个小实验。首先编译下面的程序:
  int main( void )
  return 0;
  然后打开附件里的“命令提示符”,在命令行里运行刚才编译好的可执行文件,然后输入“echo %ERRORLEVEL%”,回车,就可以看到程序的返回值为 0 .假设刚才编译好的文件是 a.exe ,如果输入“a && dir”,则会列出当前目录下的文件夹和文件。但是如果改成“return -1”,或者别的非 0 值,重新编译后输入“a && dir”,则 dir 不会执行。因为 && 的是:如果 && 前面的程序正常退出,则继续执行 && 后面的程序,否则不执行。也就是说,利用程序的返回值,我们可以控制要不要执行下一个程序。这就是 int main 的好处。如果你有兴趣,也可以把 main 函数的返回值类型改成非 int 类型(如 float),重新编译后执行“a && dir”,会出现什么情况,想想为什么会出现那样的情况。顺便提一下,如果输入 a || dir 的话,则表示如果 a 异常退出,则执行 dir .
  5. 那么 intmain(intargc,char*argv[],char*envp[])呢?
  这当然也不是标准 C 里面定义的东西!char*envp[] 是某些编译器提供的扩展功能,用于获取系统的环境变量。因为不是标准,所以并非所有编译器都支持,故而移植性差,不推荐使用。
  到了这里,你应该了解为什么主函数定义为 int返回类型,而且函数体里面有return 0;这个语句了吧。
  3 只要一个函数的返回值是数字型的,那么就可以返回0(即return 0),其实你返回多少都没问题。一般情况下,C++做出来的函数都要求返回一个值,当函数执行正常,且达到了一般情况下的目的,那么就返回0表示正确的调用了该函数,这个0就是返回给主调函数以通知没有出错的;如果函数调用中出错,或者没有按照一般情况执行,那么就返回1,以告知主调函数采取响应策略;如果你在某个函数所在类的定义所在的头文件中定义了一组(一般都是负整数),那么函数就可以返回不同的值以告之主调函数具体发生了什么异常或错误,这种情况一般用于函数功能独立性较差的的情况。所以一般不鼓励把函数返回类型定义为void,至少返回应该是int,而在函数的最后加上return 0.语句:
  int func(参数列表)
  Return 0;
  在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。
  如果你定义一个函数有返回类型,可以想下面那样调用:
  int func()
  int main()
  intvalue=func();
  return 0;
  4 return语句后面具体是什么内容,这就要具体情况具体分析了:
  (1) 在返回类型是char的函数中,return后应该是char类型的值;
  (2) 在返回类型是int的函数中,如果是要停止函数的调用,最好应该为0;其他的按照你的目的而定,只要是int 类型就行了
  (3) 在返回类型是结构类型的函数中,return后应该是结构的一个实例对象。
  总之,函数定义为什么样的返回类型,该函数中return后就应该是相应类型的值。
[ 责任编辑:之极 ]
去年,手机江湖里的竞争格局还是…
甲骨文的云战略已经完成第一阶段…
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。
微信扫一扫
关注Chinabytereturn 0 和1的解释_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
return 0 和1的解释
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 return回调函数返回值 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信