Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ ';继续';用旗帜行动?_C++_C_Loops_Flags_Continue - Fatal编程技术网

C++ ';继续';用旗帜行动?

C++ ';继续';用旗帜行动?,c++,c,loops,flags,continue,C++,C,Loops,Flags,Continue,continue语句应该作用于内部循环,对吗??还是我遗漏了什么 for (j=0; j< 100; j++) { for (i=0 ; i<10; i++) { bool flag = false; //CALL TO A FUNCTION WHICH, BASED ON SOME CONDITION, MODIFIES FLAG AND RETURNS IT TO THIS LOOP if(flag)

continue语句应该作用于内部循环,对吗??还是我遗漏了什么

    for (j=0; j< 100; j++)
    {
    for (i=0 ; i<10; i++)
    {

    bool flag = false;

        //CALL TO A FUNCTION WHICH, BASED ON SOME CONDITION, MODIFIES FLAG AND RETURNS IT TO THIS LOOP

         if(flag)
           {
             continue;  //SHOULDN'T IT CONTINUE THE LOOP ON i??????
           }

       //CALLS TO SOME OTHER FUNCTIONS WHICH SHOULDN'T BE CALLED IF FLAG IS 1

      }
   }
(j=0;j<100;j++)的

{

for(i=0;iContinue)将移动到调用它的最近循环的下一个迭代。在您的情况下,它将移动到第二个循环的下一个迭代,即值为i的循环


如果遇到continue时i的值为9,则它将进入第二个循环,当i的值在递增后变为10时,它不满足条件,并将以值j移动到外循环的下一次迭代。如果内循环计数器(i)当它点击continue语句时为9,则内部循环将退出,外部循环将进行一次迭代,然后进入内部循环,计数器初始化为0。

是的,我做了。在我的情况下,它不会迭代到下一个I值,而是继续调用该条件下的其他函数,即使现在标志为1(我知道,因为我通过打印检查)很抱歉,我在函数中打印了值,它给出了1,但在返回值时,我想会有一些错误,因为在我的I循环中,现在打印时,它再次是0。我会看看有什么问题。我更正了返回的错误,现在它会迭代到外部循环而不是内部循环。你能粘贴尽可能短的代码版本吗这就暴露了问题?我不知道为什么在我的代码中它会移动到j的下一个迭代。你能提出一些建议吗?你能在if条件中添加一个print语句来确认它确实进入了if条件,并且continue语句被执行。