今天遇到了一个函数,搞的我好晕

五号智能 2008-07-29 09:31:27
void fun()
{
if (XXX=XXX)
return;
else
XXXXXXX;
}
void型函数的返回值问题,
第一个问题看过return; 这样的语句,但我不知道这个是什么意思,希望大侠给解释一下。
第二个问题,有人说这个语句能通过编译。我想问的就是,如果我真的想在某些条件的时候退出这个函数,我怎么退出?
一般的时候我都是用一个条件把所有的语句包含,条件不成立就直接跳过去退出了。
但看到这个函数的时候俺有点迷茫,这样可以行的通吗?

...全文
116 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
五号智能 2008-07-29
  • 打赏
  • 举报
回复
嘎嘎


如果赋值成功,结束函数……

结了,给最先回答的人,嘎嘎
f22fbi 2008-07-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 k2eats 的回复:]
可以啊

if成立的话就退出这个函数
else
执行下面的语句
[/Quote]
XiaoG602 2008-07-29
  • 打赏
  • 举报
回复

void fun()
{
if (XXX=XXX)
return;
else
XXXXXXX;
}

如果赋值成功,结束函数……
Gob00st 2008-07-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhouzhenyan 的回复:]
第一个问题:return的含义是返回到调用函数的入口点,函数的调用其实现是一个压入堆栈的过程,将函数调用相关的信息压入栈,如参数、调用入口地址等,return的含义就是表示函数调用结束,同时相应的调用信息出栈。
第二个问题:当if成立时就退出了这个函数,当if不成立时,执行完XXXXXXX后也退出了这个函数。
[/Quote]
wjb_yd 2008-07-29
  • 打赏
  • 举报
回复
return 直接ret,如果没有返回值的话,就不用做特殊处理了,直接退出函数
void 一样可以return ,直接退出函数

void fun()
{
if (XXX=XXX)
return;
else
{
XXXXXXX;
return;
}
}

void fun()
{
if (XXX=XXX)
else
{
XXXXXXX;
}
}

都可以的...
lv_zxy 2008-07-29
  • 打赏
  • 举报
回复
在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。
zhouzhenyan 2008-07-29
  • 打赏
  • 举报
回复
第一个问题:return的含义是返回到调用函数的入口点,函数的调用其实现是一个压入堆栈的过程,将函数调用相关的信息压入栈,如参数、调用入口地址等,return的含义就是表示函数调用结束,同时相应的调用信息出栈。
第二个问题:当if成立时就退出了这个函数,当if不成立时,执行完XXXXXXX后也退出了这个函数。
xkyx_cn 2008-07-29
  • 打赏
  • 举报
回复
行的通

return并不一定要返回值,表示当前函数返回到上级函数的调用点
HelloDan 2008-07-29
  • 打赏
  • 举报
回复
也可以通过的,只是返回,什么也不管。你可以写一个来试一下就知道了。
五号智能 2008-07-29
  • 打赏
  • 举报
回复
哎呀,都看到有人回复了,为什么这个帖子还不刷出来,要等多少时间呀!!!!
K行天下 2008-07-29
  • 打赏
  • 举报
回复
可以啊

if成立的话就退出这个函数
else
执行下面的语句

65,187

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧