我这个程序,在matlab的simulink中function中,我想实现3个输入,3个输出。

2024-12-26 19:31:42
推荐回答(1个)
回答1:

  1. 从图判断,你用的是Embedded MATLAB Function模块;

  2. MATLAB的switch...case语句和C语言不同,case的后面应该接逗号而不是冒号;

  3. 你的u1、u2、u3多处误写成u(1)、u(2)、u(3);

  4. 条件语句的最后一个分支

        else(u1==0&&u2==-1)

    到底有没有条件判断?有条件应该用elseif,无条件的话后面不应该有括号;

  5. 你要确保所有执行路径输出参数都会被赋值,例如:

    1. if语句必须要有else而不能只有elseif;

    2. switch语句必须有otherwise而不能只有case。

       

    尽管从你的实际数据来说可能不会出现else和otherwise分支的情况,但从程序的要求上来说,必须要保证执行路径的完备,否则不能通过编译。