Unrecognized function or variable in live script
14 views (last 30 days)
I am running the following simple live script in Matlab Online:
a = 1
function out = b(o)
out = a + o;
and I get the following error:
I am not sure how to make the function b use the variable a in this scenario. One of my postulations was that this is only a Matlab Online issue, but I can't verify this. I also tried using global a but it did not work.
David Fletcher on 8 May 2021
Variables are local to functions. The only (well strictly speaking not the only) way to get them into a function is to pass them in as an argument, and the only way to get them out is to pass them out. In this case you are passing 'o' into the function as an argument, so it is available - a is not being passed into the function so the function can't access it. You would either have to define a inside the function, or pass it into the function as an argument in the same way as you are passing o into the function.