Why can´t i do this? (C-Code doubt)
Show older comments
Hello,
If i have as a S-Function parameter:
variable1 (with value 0)
And i have an input (u) and an output (y). I want to do this:
double variable3 = 0,*var,*input,*last;
input = &u[0]; /* u[0] is the Simulink block input */
last = &variable1;
var = &variable3;
*var = *input - *last;
if (variable3 > 0){
y[0] = *input; /* y[0] is the Simulink block output */
*last = *input; ---> This line doesn´t work!, Why?
}
else
y[0]=0;
I´m trying to implement this code in a S-Function.
Thanks!
Answers (1)
Jan
on 7 Oct 2012
0 votes
Is u a const variable, while last is not?
3 Comments
Enrique
on 7 Oct 2012
Jan
on 8 Oct 2012
Nope, than the const qualifier is most likely not the problem.
How do you check, that *last is not assigned correctly? I'm convinced that the line does assign the value. Therefore I assume, that you expect the changes on the wrong place.
Enrique
on 8 Oct 2012
Categories
Find more on Simulink in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!