一般的C语言程序在什么情况下需要写返回值,什么情况下不需要写呢?

如题所述

最开始必须声明下,大部分情况下都是要有返回值的,特别是你以后工作了写的一些程序。不过,也有少部分情况下是不需要返回值的,那就是你不太关心这个函数的具体运行情况,或者这个函数本身很简单,出错的几率太小了,又或者是初学者在练习的时候。比如部分close()类型的函数通常返回值都为void,比如show()这类的函数通常只是显示内容的,也通常没有返回值。追问

还有哪些函数的返回值是void呢?

追答

函数的返回值为void并不是一个好的习惯。上面也说过,除非是函数体非常简单,极小的概率出错,或者一出错,就可能导致系统崩溃,又或者你压根就不关心这个函数的具体运行情况,那么你才能让这个函数的返回值为void。否则,请一定要给函数加一个返回值!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-07
这个是根据函数功能决定的,如果一个函数执行完成后有执行结果需要反馈给程序的其他部分,一般是需要返回值的,
如果这个函数执行完成后不需要,反馈给程序任何结果,就可以不带返回值,追问

怎么能知道执行结果是否需要反馈给程序呢?

追答

这个就根据你的函数功能了,举个例子
void aaaa(void){
printf(……);
} 这个函数的功能就是打印,不需要给程序反馈任何东西,所以可以不要返回值,

unsigned char aaaa(int a,int b){
if(a>b) return a;
else return b;
}
这个函数是求两个数中的最大值,找出最大值后让程序其他部分知道,所以就需要返回值,
多看书细细品味一下,

第2个回答  2014-03-07
看函数的 返回值为void的话就直接retun; 当然也可以省略
第3个回答  2014-03-07
调用函数需要将结果返回到main函数,用return ();语句
第4个回答  2014-03-07
主函数不用写。分函数要写,如果分函数的返回值是void,也不用写追答

我平时主函数都是return 0; int main(int argc,char** argv)

main其实应该有返回值的,你可能暂时用不到,但应该养成这个习惯

回复 guoqiang_cn 我现在主函数一般没写