c s函数中局部函数内的变量

时间:2012-08-08 04:13:58

标签: c matlab

我正在尝试在matlab中创建一个s-function块simulink.Here是mdlOutput函数。当我在

中定义局部变量时,我给出了一个错误
//////


static void mdlOutputs(SimStruct *S, int_T tid)
{
real_T           *y    = ssGetOutputPortRealSignal(S,0);// no error
real_T           *x    = ssGetContStates(S);//no error
UNUSED_ARG(tid);
real_T           *a;// error:missing ';' before 'type'
real_T           *b=5.0//error: illegal use of this type as an expression
}

不仅仅是real_T,我不能在函数中定义任何类型的局部变量,除了已经在模板中定义的y和x之外。在顶部使用静态变量工作正常。可能是正常变量的问题?

1 个答案:

答案 0 :(得分:0)

我明白了。我必须在UNUSED_ARG(tid)命令之前定义变量