C语言。void类型函数。

JUNJUNJJ 2002-09-14 07:13:54
最近在看小谭的C。有个小问题。
为什么用void定义被调函数中有return语句。
void不是定义了函数不带回函数值吗?为什么还用return语句。??
请指教。
...全文
296 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
liubear 2002-09-14
  • 打赏
  • 举报
回复
return;
表示函数返回。
mylove0618 2002-09-14
  • 打赏
  • 举报
回复
to haitaoli:
你的程序就有明显的问题了。因为最基本一点,void是一种特殊的类型。它只有一个值即空值。而不是你返回的1。
mylove0618 2002-09-14
  • 打赏
  • 举报
回复
直观的理解,void可以认为是一种类型,即空类型。这种类型的值只有一个,即空值。这样一来,我们可以认为所有函数都有返回值,只是有的返回值比较特殊,即空类型值。具体形式,就是return 空。至于void函数一般为什么没有return语句,你可以认为编译器会自行处理就可以了。其实事实上,函数的调用以及返回不过是在栈上的处理而已。返回什么值仅仅是一个形式。
yonk 2002-09-14
  • 打赏
  • 举报
回复
在主程序中return用来将参数返回给操作系统。
编译出错与编译器有关吧。具体是不是如此我不清楚。
haitaoli 2002-09-14
  • 打赏
  • 举报
回复
void main()
{
printf("hello world");
return 1;
}
F9===>Warning : Void function may not return a value in a function .
Ctrl+F9==>Alt+F5==>hello world
虽然有warning 但可运行。。
future0723 2002-09-14
  • 打赏
  • 举报
回复
up
zxz775 2002-09-14
  • 打赏
  • 举报
回复
很对啊,在C中可以这样,但并不返回值,也就是说void返回是空
blue_coco 2002-09-14
  • 打赏
  • 举报
回复
return 表示退出本函数。

void Fun(void)
{
if ( A )
{
return;//---------->1
}
语句1;
return;//-------------->2
}

1处return表示当条件满足退出函数,语句1不能被执行。
如条件不满足,执行语句1后退出。
即使2处的return不写也要退出函数,写了也没错啊!
好习惯还是写上。
everandforever 2002-09-14
  • 打赏
  • 举报
回复
return是返回啊,return后面没有返回值嘛,很正确啊。
tony1976 2002-09-14
  • 打赏
  • 举报
回复
return在函数尾可以省略,但是有时候需要中间直接从函数中返回,这是就用得上return了
jieshen 2002-09-14
  • 打赏
  • 举报
回复
在那里?好像不会出现这样的情况的?????????

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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