what does this error means-"Function definitions are not permitted at the prompt or in scripts."?
42 views (last 30 days)
Thorsten on 18 Nov 2015
Edited: Thorsten on 18 Nov 2015
To define a function, create a new m-file on the command line
>> edit myfun.m
write your function in this file, first non-command line must contain the function header using the "function" keyword, like function y = myfun(x). Save it, and call it from the command line or within another function or within a script
You've probably created a file with some matlab commands, i.e., a script, and somewhere below in this script you defined a function. That's not allowed. Either move your function to a separate file, or convert your script to a function by adding a first line like
Now it's a function, and you can define a function within this function. However, such a nested function is visible only within this function, not at the command line and not within other functions. And functions can be nested only one level, but there can be multiple nested functions.
More Answers (2)
Meghana Dinesh on 18 Nov 2015
Edited: Meghana Dinesh on 18 Nov 2015
It means you are trying to define a function in the prompt or maybe within a different script. This is not permitted in MATLAB. Define functions in their respective m-files (save the m-file with the same name as the function's). Read more about MATLAB functions .