2

我注意到 Matlab 中有一个奇怪而烦人的行为。可能我只是做错了什么,但是当我对 M 文件进行一些更改、保存并重新运行它时,我的断点没有按预期触发。如果我第二次执行 M 文件,则会按预期触发断点。为什么会出现这种奇怪的行为,我该如何解决?

编辑:

根据要求,我的 Matlab 代码片段:

function readCommutingContextData(filename)
fid = fopen(filename);

bufferSize = 5;

format long g
nLines = 0;
tline = fgetl(fid);
while ischar(tline)
    nLines = nLines + 1;
    tline = fgetl(fid);
end
fclose(fid);

timestamps  = zeros(nLines,2,'uint64');
coords      = zeros(nLines,3);
features    = zeros(nLines,12);
labels      = cell(nLines,3);
sources      = cell(nLines,1);
fid = fopen(filename);
tline = fgetl(fid);
i = 1;
while ischar(tline)
    tokens = textscan(tline, '%s', 'delimiter', ',');   
    tokens = tokens{1};
    timestamp           = uint64(str2double(tokens{1}));
    gpsTime             = uint64(str2double(tokens{2}));
    latitude            = str2double(tokens{3});
    longitude           = str2double(tokens{4});
    accuracy            = str2double(tokens{5});
    source              = tokens{6};

    ...
end
fclose(fid);
4

3 回答 3

1

我观察到在 R2011a 和 R2012a 中编辑文件之前设置的断点的类似行为。我相信这是一个 Matlab 错误。

我发现的解决方法是在编辑和保存文件后重置(清除/设置)至少一个断点。

于 2012-09-07T21:15:55.763 回答
0

当我从“命令窗口”运行代码时,我遇到了同样的问题,并且断点没有工作。之后我上网并有人指导我,我在调用语法前使用了“ clear all ”。轻松删除“全部”并再次运行您的代码,所有断点都将起作用。

于 2017-03-05T04:13:06.370 回答
0

它很容易处理转到断点选项卡并单击那里的箭头,首先单击全部清除,然后单击设置和清除,最后选择错误时停止选项....您的断点开始正常工作

于 2018-05-02T06:10:36.630 回答