void函数为什么不需要返回值??

新手上路,请多包涵

void函数为什么不需要返回值?与int型函数的区别

阅读 9.3k
4 个回答

哲学问题咱们猿要怎么回答图片描述

不是void函数不需要返回值

是我们定义没有返回值的函数叫void函数

新手上路,请多包涵

void并不是没有return语句,只是隐藏起来了,如果你希望你的某个函数foo在某个条件下停止,回到main函数,可以这样做

void foo()
{
    printf("Hello 1\n");
    if ( /* your condition */ )
        return;

    printf("Hello 2\n");
    // a hidden return
}

你可以理解为函数在return语句处将 控制权 返回给了调用它的main函数,如果main函数需要利用foo函数的运算结果做之后的事情,我们就把它定义为一个有返回值(int)的函数,这样它就会在返回控制权时顺便把运算结果给主函数,反之我们就用上面的 void 来定义

int为啥是整型?