以C为单位返回值

Kab*_*bir 0 c return-value

void draw( int I, long L );
long sq( int s );

int main()
{
    long y;
    int x;

    y = sq( x );
    draw( x, y );
    return();
}  

long sq( int s )
{
    return( s * s );
}

void draw( int I, long L )
{
    return;
}
Run Code Online (Sandbox Code Playgroud)

有什么区别return(),return (S*S)return?请解释一下.

Luc*_*ore 5

好:

return(); 是非法的,你试过编译吗?

return(s*s)是相同的return s*s;,它告诉函数返回什么值.

例如,如果你有:

 long x = sq(1);
 //x would be 1 here
Run Code Online (Sandbox Code Playgroud)

return;退出void函数.您不能在具有非void返回类型的函数内放置一个空的return语句.放在void函数的末尾,它什么都不做.但是你可以用它来提前退出函数:

void foo()
{
    if ( someCondition )
       return;
    statement1;
    statement2;
    return;
}
Run Code Online (Sandbox Code Playgroud)

第一个return是效果,如果someCondition是,它将退出函数true.所以这些陈述不会被执行.第二个return没有任何区别.