在使用键盘输入进行调试时,我希望能够跳过MATLAB中几行代码的执行

在使用键盘输入进行调试时,我希望能够跳过MATLAB中几行代码的执行,matlab,debugging,image-processing,user-input,Matlab,Debugging,Image Processing,User Input,目前,我正在尝试调试以下代码摘录: if (white_flag == 1) keyboard; imshow(rl_img); N = N+1; times(times_index,1) = index; while(white_flag == 1) imshow(rl_img); index = index+1; %%% If statement for when the loop has run

目前,我正在尝试调试以下代码摘录:

if (white_flag == 1)
    keyboard;
    imshow(rl_img);
    N = N+1; 
    times(times_index,1) = index; 
    while(white_flag == 1)
        imshow(rl_img);
        index = index+1; 

        %%% If statement for when the loop has run out
        if (index >= frames)
            break
        end

        %%% Initial Image Pre-Processing
        rl_img = ones(mod_height,width);
        pre_rl_img = medfilt2(vreader.read(index));
        for i = 1:mod_height
            for j = 1:width
                rl_img(i,j) = pre_rl_img(i,j); 
            end
        end

        white_flag = detect_white( rl_img, white_flag );
    end
    times(times_index,2) = index;
    times_index = times_index+1; 
else 
    index = index+ 1;
end
现在,如您所见,调试键盘输入调用
keybaord
位于第二行。虽然这使我能够有效地查看程序执行的每个步骤,但我不明白如何跳过以下部分:

        for i = 1:mod_height
            for j = 1:width
                rl_img(i,j) = pre_rl_img(i,j); 
            end
        end
这是一张相当大的图片(
rl_img
),因此在我手动涂鸦代码时等待键盘输入会浪费很多时间。有人能告诉我在调试程序时如何跳过这些代码行的用户输入执行吗


请不要犹豫,问我任何可以澄清这个问题的问题。谢谢你的回答

答案很简单:

  • 在长循环之后设置断点

  • 当您决定自动运行循环的所有剩余部分直到您刚刚设置的断点时,请按[F5](继续)


  • 这假设您在普通的MATLAB IDE中调试代码。

    答案非常简单:

  • 在长循环之后设置断点

  • 当您决定自动运行循环的所有剩余部分直到您刚刚设置的断点时,请按[F5](继续)


  • 这假设您在普通的MatlabIDE中调试代码。

    如果我正确理解了您的问题,您就不想一步一步地完成每个循环迭代

    您可以跟随,也可以通过将光标放在循环之后的某个位置来避免创建额外的断点

    点击
    在编辑器的“调试”面板上。

    如果我正确理解了您的问题,您就不希望一步一步地完成每个循环迭代

    您可以跟随,也可以通过将光标放在循环之后的某个位置来避免创建额外的断点

    点击
    在编辑器的调试面板上。

    @SharanDuggirala请注意,执行
    全部清除
    调用后,您设置的断点将从所有文件中删除。以防万一您会想知道“我的断点到哪里去了?”——就像第一次发生在我身上一样…:-)@SharanDuggirala请注意,一旦执行
    全部清除
    调用,您设置的断点将从所有文件中删除。以防万一您会想知道“我的断点到哪里去了?”——就像第一次发生在我身上一样…:-)