Since all of my "Undefined function or variable" errors were on variables, and all my variables were 1 x 1 doubles, I just defined them all as 0 prior to them being defined in a for loop. It seems you can not define them in a for loop.
"Undefined function or variable '****'. The first assignment to a local variable determines its class."
33 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Adam Kaas
am 23 Mai 2012
Kommentiert: ankit mishra
am 17 Sep. 2022
Hi all,
I'm using Coder to convert my code to C/C++.When I attempt to convert one of my functions just for practice, i started receiving errors. I was unsure how to define my inputs, so I used stops and discovered my input was a struct. The fields in that input I was able to define mostly as double(1x1) (determined by using stops again) as well as one of the fields being a struct as well. Now the error I get when I tryto build my code is
Undefined function or variable 'DopplerSpread'. The first assignment to a local variable determines its class.
What am I doing wrong? Do I need to define each function prior to using it in my code? Below is a sample of the line of code receiving that error.
DopplerSpread(path_ct) = FadeAll.Subpaths(path_ct).DopplerSpread;
0 Kommentare
Akzeptierte Antwort
Adam Kaas
am 23 Mai 2012
2 Kommentare
Walter Roberson
am 26 Mai 2019
Bearbeitet: Walter Roberson
am 26 Mai 2019
Yes, but Nam moon Kim's solution is better: https://www.mathworks.com/matlabcentral/answers/39191-undefined-function-or-variable-the-first-assignment-to-a-local-variable-determines-its-clas#answer_338798
Weitere Antworten (5)
Nam moon Kim
am 28 Sep. 2018
Bearbeitet: Nam moon Kim
am 28 Sep. 2018
I had a same problem. I think that is variable initiation problem.
in the matlab, if there is not variable, that's variable auto generation. however, in the stateflow, need a initiation.
in my case
*********************** error **********************
function ~
for i=1:len
temp(i) = i;
end
end
*********************** not error ******************
function ~
temp = zeros(len,1);
for i=1:len
temp(i) = i;
end
end
1 Kommentar
Nick
am 9 Jul. 2021
Do you know what to do if the variable that is giving me an error is an input to the function and is needed in an if statement?
Sana Ben Hmouda
am 26 Jul. 2017
Hello everybody, The answer of Adam Kaas was very clear. Azza al-abri you need only to initialize the concerned variable at 0. (i.e if your variable is varia, so you put varia=0; before the loop starts)
0 Kommentare
Aaditya Umasankar
am 24 Nov. 2021
Hello everybody, in mining truck shovel operation,the truck takes some load from escavator to crusher(unloads) and come back to escavator to load and again unloads it at crusher,and this process continues till shift time ends so how do we loop the entity generator(number of trucks,truck capacity are enity attributes)) with enity server(escavator and crusher) , for this which type of block shall be used to solve the problem(simevents)
2 Kommentare
SOUVIK BASAK
am 17 Jul. 2022
Please ask your doubt somewhere else. This is not related to discussion in this thread
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!