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?请解释一下.
好:
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没有任何区别.