Wrong number of arguments in the Matlab function

6 次查看(过去 30 天)
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 个评论
Ismat
Ismat 2023-3-13
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 2023-3-14
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

请先登录,再进行评论。

回答(0 个)

标签

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by