void fbreak(int i){
if(5==i)
break;
}
void main(){
for(int i = 0;i<10;i++){
fbreak(i);
}
}
我想为f循环执行fbreak break。但似乎我的代码不起作用。
答案 0 :(得分:1)
实际上,您要做的是实现标头std::find
中声明的标准算法std::find_if
(或<algorithm>
)
您可以按照以下方式编写程序
bool fbreak( int i )
{
return i == 6;
}
int main()
{
int i = 0;
while ( i < 10 && !fbreak( i ) ) i++;
}
考虑到函数main应具有返回类型int
。
答案 1 :(得分:0)
你实际上不能从功能范围这样做,但你可以轻松做到的是
bool fbreak(int i){
return (5==i);
}
int main(){
for(int i = 0;i<10;i++){
if(fbreak(i)) break;
}
}
答案 2 :(得分:0)
对代码进行非常简单的修改
void fbreak(int *i){
if(5== *i)
*i = 10;
}
void main(){
for(int i = 0;i<10;i++){
fbreak(&i);
}
}
这会将i的值增加到10,这将导致循环中断