CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  新手乐园

问个菜鸟级别的问题!!

楼主cumt_TTR(饮水机)2005-04-02 16:29:08 在 C/C++ / 新手乐园 提问

在子程序调用完的时候  
  是不是   return   语句必须写在该子程序的末尾啊  
  不然就会产生不同的结果啊? 问题点数:0、回复次数:12Top

1 楼Salam2001(Upgrading : C++ and Data Structure ...)回复于 2005-04-02 16:33:52 得分 0

首先,C/C++   里没有子程序的概念,都是函数。  
  如果,函数有返回值,那么要用   return   语句返回一个值,不然编译报错。  
  如果,函数被定义为   void   类型,那么有没有   return   都无所谓。Top

2 楼cumt_TTR(饮水机)回复于 2005-04-02 16:36:44 得分 0

我不是这个意思,我是说,那个return   语句放在不同的地方回产生不同的结果啊  
    前提是   该返回直不会随着   该语句的位置的改变而改变了  
  楼下的大虾帮忙啊Top

3 楼arrowcy(长弓手)回复于 2005-04-02 16:43:58 得分 0

只要return语句一执行,函数里面的其他语句就不会在执行了Top

4 楼Salam2001(Upgrading : C++ and Data Structure ...)回复于 2005-04-02 16:44:58 得分 0

我是说,那个return   语句放在不同的地方回产生不同的结果啊  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  你想在哪里返回就在哪里写   return;   这个没有严格规定,只要是能写语句的地方,就可以写return   返回。就是看需要罢了。Top

5 楼cumt_TTR(饮水机)回复于 2005-04-02 17:03:29 得分 0

只要return语句一执行,函数里面的其他语句就不会在执行(引用arrowcy(长弓手))  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  意思是说,我将return语句写在中间的话我后面的语句都没用了?  
  是不是这样啊?  
  期待中Top

6 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-04-02 17:06:01 得分 0

如果return正常执行了,程序就返回了,后面的语句就不会执行了Top

7 楼lw1a2(一刀 现在改六点下班了:()回复于 2005-04-02 17:06:39 得分 0

return不一定放到尾部,例如达到某种条件,提前退出函数Top

8 楼MagicCarmack(MagiC++)回复于 2005-04-02 17:11:44 得分 0

意思是说,我将return语句写在中间的话我后面的语句都没用了?  
  是不是这样啊?  
  期待中  
   
   
  前提是你写的那句return   语句必须被执行!  
   
  如果没有被执行,也就没有什么影响的!  
  例如:  
  int   f()  
  {     int   i=0;    
        //do   something  
          if(0==i)  
              return   0;//如果i==0,后面的就不会被执行了,返回0  
          else  
              return   1;  
  }  
   
  Top

9 楼jdh2010(小金)回复于 2005-04-02 17:12:41 得分 0

对的,写了return,便不再执行后面的语句,直接返回调用环境了Top

10 楼arrowcy(长弓手)回复于 2005-04-02 21:13:44 得分 0

只要return语句一执行,函数里面的其他语句就不会在执行(引用arrowcy(长弓手))  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
  意思是说,我将return语句写在中间的话我后面的语句都没用了?  
  是不是这样啊?  
  期待中  
   
  =================================================================  
  注意,我说的是只要一执行到return语句,其他语句就没有用了  
  就像楼上几位解释的那样,就算return语句在函数的中间某个位置,只要他被跳过去了而没有执行,那么他后面的语句还是可能有效的,例如那个return语句被放在一个if语句中,如果那个if不成立,那么函数将继续从if后面执行下去的Top

11 楼cao12m(★草上飞★)回复于 2005-04-02 21:42:48 得分 0

这也问啊   当然拉你写二个RETURN有那样的判断条件不管怎么只能执行一个Top

12 楼LOWGUN(两只白袜)回复于 2005-04-03 10:23:27 得分 0

位置不关紧要,关键是程序的逻辑要对,如果你的程序中有很多很多条件判断,一个函数有100行,return完全有可能放在第一行.Top

相关问题

  • 小问题,菜鸟级别!
  • 问一个菜鸟级别的问题
  • vb6__SQL的菜鸟级别的问题:
  • 数据库连接问题~~~~~~~~~~~~~~(菜鸟级别)
  • 还不够菜鸟级别的问题:了解jbuilder和vj
  • 问一个菜鸟级别的问题,ASP.NET连接SQL2000的问题
  • 请教一个菜鸟问题:变量受保护级别限制!不可访问!
  • 50求教一个菜鸟级别的UDP套接字问题,关于UDP server端只能接收一次数据的问题?在线等,一直等............
  • 菜鸟问题:几个术语搞不清楚,希望高手能解释下,以我这个级别的最高分相送!!!
  • 菜鸟菜问!

关键词

  • 语句
  • 函数
  • 执行
  • 子程序
  • 返回
  • 中间的话
  • 没用
  • 里面的其他
  • 意思
  • 产生不同的结果

得分解答快速导航

  • 帖主:cumt_TTR

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo