当前位置: 代码迷 >> C语言 >> return与 void
  详细解决方案

return与 void

热度:923   发布时间:2006-02-12 13:50:00.0
return与 void
这两个是否有着一种同样的意思?
搜索更多相关的解决方案: void  return  

----------------解决方案--------------------------------------------------------
return 是返回一个固定的值
void   是一种无返回值类型,如果函数被定义为void型时,
那么在函数中再使用return 语句不起任何作用

----------------解决方案--------------------------------------------------------
能举个例子说明吗?
----------------解决方案--------------------------------------------------------

有viod就不能有return 两者不能共存


----------------解决方案--------------------------------------------------------

二楼所说有一定道理,我相信她也一定明白,不过他的描述好像有些问题,如果函数被定义为void 那么函数里不可以出现return 而不是出现return没有作用~


----------------解决方案--------------------------------------------------------
返回值是一个什么概念?

这个不是很明白
----------------解决方案--------------------------------------------------------

int add(int x,int y)/*有返回值利用函数计算两个数加法*/
int z;
z=x+y;
return z;
}
main()
{int a,b,c=0;
scanf("%d%d",&a,&b);
c=add(a,b);
printf("%d",c);
getch();}

void add(int x,int y)/*无返回值利用函数计算两个数加法*/
{int z;
z=x+y;
printf("%d",z);
}
main()
{int a,b;
scanf("%d%d",&a,&b);
add(a,b);

getch();
}
以上两个程序功能一样,但是用法不一样


----------------解决方案--------------------------------------------------------
比如说你定义了一个函数a()里边有个变量x,里边对x进行了一堆运算,并且x也有了一个值,你用一个return x语句~返回到组函数,这时主函数就认为你这个函数有了一个数值,那就是你的返回值即a()=x(这么写是不对了,为了你理解,才这么写),由于你在主函数调用a()函数的形式是y=a();所以y就等于a(),也就是说y=x 表达能力有限,谅解~


a(){
int x;
...
return x;
}

main(){
y=a();
}
----------------解决方案--------------------------------------------------------
致 7楼
#include "stdio.h"
int add(int x,int y)
{int z;
z=x+y;
return z;
}
main()
{int a,b,c=0;
scanf("%d%d",&a,&b);
c=add(a,b);
printf("%d",c);
getch();}

这个程序 return z; 有无结果都一样?
----------------解决方案--------------------------------------------------------
致 7 楼

void add(int x,int y)/*无返回值利用函数计算两个数加法*/
{int z;
z=x+y;
printf("%d",z);
}
main()
{int a,b;
scanf("%d%d",&a,&b);
add(a,b);

getch();
}

有无 void 结果也都一样.


----------------解决方案--------------------------------------------------------
  相关解决方案