Info

此问题已关闭。 请重新打开它进行编辑或回答。

Matlab Coder - Passing Variables

1 次查看(过去 30 天)
Christian
Christian 2015-1-14
关闭: MATLAB Answer Bot 2021-8-20
I wrote a Code in Matlab in order to generate C-Code using the Matlab Coder. The Main function calls several other functions. E.g. Function A:
function [Calibration]=ReadCalib_ForCodeGen(file) %#codegen %Read in data temp=readfile(file);
ct=3; %Pass temp to another function endline=endlinedeterm(temp,ct);
end
function out=endlinedeterm(temp,ct) %#codegen out=0; for i=1:length(temp(ct,:))-1 if(temp(ct,i)==0 && temp(ct,i+1)==0) out=i-1; break; end end
end
The error I get during build is: Index expression out of bounds. Attempted to access element 3. The valid range is 1-1.
I didn't find a way around this problem. Do you have any suggestions?
  2 个评论
Sara
Sara 2015-1-14
Try
size(temp)
If the first value returned is smaller than 3, then temp(3,:) will trigger an error.
Ryan Livingston
Ryan Livingston 2015-1-14
You should also see a link that says:
View Error Report
after the error. Click on that and you'll get a report showing your MATLAB code. Hover over temp to see what size MATLAB Coder thinks it is. It may be that it was determined that readfile returns a size different from what you are expecting.

回答(0 个)

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by