LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 937|回复: 7

求助:这里return回到哪呢?

[复制链接]
发表于 2008-5-14 18:12:51 | 显示全部楼层 |阅读模式
while(1)
{
   lock.l_type = type;
   if((fcntl(fd,F_SETLK,&lock))==0)
       return;
  。。。
}

请问这里return回到哪呢?
发表于 2008-5-14 19:08:18 | 显示全部楼层
弱弱地问一句, return 啥意思?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-14 21:16:40 | 显示全部楼层
呵呵 返回
但是我不知道返回到哪
回复 支持 反对

使用道具 举报

发表于 2008-5-15 09:23:58 | 显示全部楼层
return 可不是一句简单的 "返回" 就可以概括的.

return 是 "函数返回", 是离开当前函数, 回到调用方. 特别地, 对于 main() 函数来说, return 就意味着程序进入了结束阶段, 由系统开始进行收尾工作.

那么, 再弱弱地问两句, 函数是什么样子的? 楼主给出的代码是一个完整的函数吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-15 13:49:53 | 显示全部楼层
这是一个main函数调用的子程序

所以应该是回到main中去了
那就是说,在while子程序中,只要if((fcntl(fd,F_SETLK,&lock))==0)
就回到main中继续执行了?


楼上的不好意思,真正的程序很长,没有电子版的  全敲出来实在太累了呵呵
回复 支持 反对

使用道具 举报

发表于 2008-5-15 14:15:34 | 显示全部楼层
return退出函数,不是退出子程序
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-15 18:15:12 | 显示全部楼层
Post by x11;1849970
return退出函数,不是退出子程序



不明白,子程序不就是函数调用来的吗?

一个子程序肯定是一个函数啊

请楼上帮指教!
回复 支持 反对

使用道具 举报

发表于 2008-5-15 20:28:00 | 显示全部楼层
x11意思中的子程序是指程序

按这样理解,如果还不懂看C语言书吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表