c语言函数调用后必须带回返回值?

void的作用在于:
  (1) 对函数返回的限定;
  (2) 对函数参数的限定。

先给一个例子 定义函数
返回值 函数名(参数1,参数2,参数3,.......)
{内容}

int sum (int a,int b)
{
int c;
c=a*b;
return c;
}


其中第一个int是返回值 就是别的函数调用此函数时这个函数给他的一个值。
形式一:
如果调用时不需要返回值,则函数写为
void sum(int a,int b){....} 此时函数没有返回值
形式二:
如果不需要参数 则int sum(void){...}
此时void的意义为空,就是没有参数的意思
形式三:
如果都不要 则为void sum(void);

所以返回之前的问题,c语言函数调用后必须带回返回值?

形式一,和形式三就足以证明这句话的绝对性;

总而言之:
void main 主函数没有返回值,main 默认为int 型,即 int main(), 返回整数。

按照新的C99标准,即使函数本身没有定义返回值,编译器也会加上,以返回给激发程序,运行状态。很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。

C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( ) { /* ... * / } is not and never has been C++, nor has it even been C. 即( void main( ) 从来就不存在于 C++ 或者 C )。在部分编译器如Devc++中,void main ()这种形式是不能编译的)

注意,新标准不允许使用默认返回值,即int不能省,而且对应main函数不再支持void型返回值,因此为了使程序有很好的移植性,强烈建议使用:
int main()
{
return 0; /* 新标准主函数的返回值这条语句可以省略 *
}

文章是根据问题摘录不同作者的回答摘录补充而成,欢迎各位大佬指正

  • 9
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值