C 是否有必要在此函数中的while循环后包含return语句?
我有一个函数C 是否有必要在此函数中的while循环后包含return语句?,c,function,return,C,Function,Return,我有一个函数 int myfun(int *a, int *b) { while(some condition) { if(condition) return *a + *b; else { some manipulation; } } return -1; } 当遇到while->if part中的第一个return语句时,控件是转到调用myfun的函数还是while循环仍
int myfun(int *a, int *b)
{
while(some condition)
{
if(condition) return *a + *b;
else
{
some manipulation;
}
}
return -1;
}
当遇到while->if part中的第一个return语句时,控件是转到调用myfun的函数还是while循环仍在继续?为什么需要return-1语句?在
return*a+*b
之后,函数返回该语句并结束。您需要返回-1
,因为如果该条件从未满足,它将返回什么?它是一个int
函数,因此它必须返回某些内容。在返回*a+*b
之后,函数返回该内容并结束。您需要返回-1
,因为如果该条件从未满足,它将返回什么?这是一个int
函数,因此它必须返回一些内容。需要return-1
语句,因为某些条件可能在第一时间没有被填满,因此不会进入while
循环
因此,必须提供一些返回值(-1)。需要return-1
语句,因为某些条件可能在第一时间没有被填满,因此while
循环将不会被输入
因此,必须提供一些返回值(-1)。如果不满足某些条件,控制将永远不会进入循环并继续执行函数结束的下一行
在这种情况下,函数应该返回一些值,因为它没有void
返回类型。因此,返回-1
如果某些条件不满足,控件将永远不会进入循环并继续执行函数结束的下一行
在这种情况下,函数应该返回一些值,因为它没有void
返回类型。因此,return-1
第一个return语句仅在满足条件时应用。如果满足条件,return语句会立即将控件带回调用函数,但是,如果由于某种原因If不满足,那么while循环的所有迭代都会得到满足,最后它必须返回一个整数值,因为返回类型是integer,所以控件会再次流回调用函数 第一个return语句仅在满足其条件时应用。如果满足条件,return语句会立即将控件带回调用函数,但是,如果由于某种原因If不满足,那么while循环的所有迭代都会得到满足,最后它必须返回一个整数值,因为返回类型是integer,所以控件会再次流回调用函数 函数的每个端点(exit)都必须有return语句(如果函数的声明与此类似)。您编写的代码将由编译器处理,因此它应该完全知道函数的所有可能的退出点,这取决于是否满足函数内分支的条件。每个端点(exit)函数的类型必须有返回语句(如果函数的声明与of相同)。编译器将处理您编写的代码,因此它应该完全知道函数的所有可能退出点,这取决于是否满足函数中分支的条件。是,亲爱的,如果“if”的条件为真语句,则函数将在该点返回。return-1语句很有用,而且确实是必要的,因为即使从未执行过“if”语句,也要注意返回一些内容。如果函数被声明为void myfunc,那么它肯定会导致错误。是的,亲爱的,如果“If”语句的条件为true,那么函数将在此时返回。return-1语句很有用,而且确实是必要的,因为即使从未执行过“if”语句,也要注意返回一些内容。如果函数被声明为void myfunc,那么它肯定会导致错误。Put实际代码,这个问题不清楚……一旦循环中的return语句被命中,函数myfun将立即结束。最后一次返回是在if语句从未到达的情况下,在这种情况下,*a+*b
从未返回,而必须返回其他内容。当“某个条件”变为false时,将返回-1。也许数据已经用完了-1通常用于表示错误。然而,在C中,指针的值实际上是非法的。如果null为非错误,则函数应设置一个标志,而不是尝试构造另一个无效指针。为什么int*
返回int
值?这是没有意义的。在我看来,这是一种不好的方法。我建议始终在函数顶部声明您的返回变量。您可以将其设置为默认值(或者不必设置,但我大部分时间都这样做),然后在满足条件时更改它。顶部的声明将清楚地显示要在代码中跟踪的变量名(并且这是函数而不是过程)放入实际代码,这个问题不清楚…一旦循环中的return语句被命中,函数myfun将立即结束。最后一次返回是在if语句从未到达的情况下,在这种情况下,*a+*b
从未返回,而必须返回其他内容。当“某个条件”变为false时,将返回-1。也许数据已经用完了-1通常用于表示错误。然而,在C中,指针的值实际上是非法的。如果null为非错误,则函数应设置一个标志,而不是尝试构造另一个无效指针。为什么int*
返回int
值?这是没有意义的。在我看来,这是一种不好的方法。我建议始终在函数顶部声明您的返回变量。您可以将其设置为默认值(或不设置默认值)