Wrong number of arguments in the Matlab function

7 views (last 30 days)
whenever I run the below code, it's executed successfully. I want to convert it into C code by Matlab coder app. But It's showing error.
soc=60;
y=libonoff(soc)
y = 1
function [y]=libonoff(soc) %#codegen
if soc>=80
lib=0;
else
lib=1;
end
y=lib;
end
  3 Comments
Ismat
Ismat on 13 Mar 2023
So far I know, it's not possible to generate C/C++ executable code from Matlab scripts rather than Matlab function. My function works properly in my script. In the process of code generating how to call it with an input aruguments in a function? generally we call it in the script.
Matan Silver
Matan Silver on 14 Mar 2023
Hi Ismat,
My last comment was incorrect so I've deleted it so as to not mislead anyone. Stephen above is correct. It looks like you typed "libonoff" when the GUI asked you to provide a command or script that exercises your entrypoint. However, the function expects an input. So you should either provide "libonoff(1)", or the name of your script that internally calls libonoff, in order to correctly exercise the entry-point. MATLAB Coder is behaving as expected in this case, since you are calling the function with no inputs when it expects one input.
Thanks and let me know if you have any questions,
Matan

Sign in to comment.

Answers (0)

Categories

Find more on MATLAB Coder in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!