how to solve the probelm that an input variable will be cleared in a loop in the definition of a matlab function?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Yovan Ho
el 18 de Feb. de 2020
Comentada: Yovan Ho
el 19 de Feb. de 2020
Hi,
I'm a novice in matlab.
I encounterd two problems while trying to define a function.
First, the input variable that is a single number cannot be recognised as numeric in the function statements.
Second, I don't know why the input variable will be cleared in a loop...like the below loop...in this settings, I tried to define a function that looks like [output1 output2]=function(*****,A,****). However, while calling this function, it will report error that "reference to a cleared variable A" in the second iteration for the loop (marked by red circle)...
Wish somebody could help me to solve these two confusing problems!
7 comentarios
Respuesta aceptada
Steven Lord
el 18 de Feb. de 2020
In general, you shouldn't need to call clear in a function. In those situations where you must, strongly prefer calling clearvars (or clear with the name of a variable as input) to clear a specific variable rather than calling clear with no input arguments which clears everything.
In this case, delete the call to clear with no inputs in your code. Examine your two calls to clear with an input argument to determine if they are truly necessary.
4 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!