c语言的问题 返回值类型,求大神帮忙解答一下

第一个函数返回值类型为什么是int,写成void就是错的,而第二个返回值类型却必须写成void,而写成int却是错误的。我感觉这两个函数这两种返回值类型都可以,到底我的理... 第一个函数返回值类型为什么是int,写成void就是错的,而第二个返回值类型却必须写成void,而写成int却是错误的。我感觉这两个函数这两种返回值类型都可以,到底我的理解错在了哪里
int Function() /*为什么这个返回值类型为什么是int,写成void就是错的*/
{
printf("this step is in the function\n");
}

void ShowNumber(int iNumber)
/*为什么这个返回值类型却必须写成void,而写成int却是错误的*/
{
printf("You wanna to show the Number is:%d\n",iNumber);/*输出整数*/
}
第一个程序是(去除了头文件)
void ShowNumber(int iNumber);
int main()

{
int iShowNumber;
printf("What Number do you wanna show?\n");
scanf("%d",&iShowNumber);
ShowNumber(iShowNumber);
return 0;
}
void ShowNumber(int iNumber)
{
printf("You wanna to show the Number is:%d\n",iNumber);
}
第二个程序是:
int Function();
int main()

{
printf("this step is before the Function\n");
Function();
printf("this step is end of the Function\n");
return 0;
}
int Function()

{
printf("this step is in the function\n");
}
展开
 我来答
风若远去何人留
2017-07-25 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450103
专业C/C++软件开发

向TA提问 私信TA
展开全部
从这两个函数实现上来看
都可以写成void或者int
没有什么区别。
其中,Function在调用的时候,如果有这样的写法
a=Function(xxx) 那么就必须定义成int
改成void就会报错。
而ShowNumber这个改成int,是不应该报错的,任何情况下都不该报错。
更多追问追答
追问
但确实报错了啊
我知道自己哪错了,但我还想问一下函数返回值类型void和int有什么区别,什么时候该用哪一种
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式