Info
This question is closed. Reopen it to edit or answer.
matlab to c
1 view (last 30 days)
Show older comments
I converted a function using matlab using matlab coder. in .m file i had declared:----
>> a.b = 37000; a.c = 8;
but as output in .c file i got:----
>>a.b=34000.0 a.c =7.0
? why has the values changed?
1 Comment
Kaustubha Govind
on 28 Jul 2011
Could you include a simple code snippet that we can use to reproduce the issue. It might also help to mention the command you used to generate code, as well as the MATLAB version.
Answers (2)
Walter Roberson
on 28 Jul 2011
Do those variables happen to be loop control variables in a context where they are incremented by 3000 and 1 respectively before they are used?
2 Comments
Arnaud Miege
on 29 Jul 2011
As previously asked, can you post a code snippet and the command used to generate the code, so that we can reproduce the issue?
Mike Hosea
on 1 Aug 2011
I echo the requests for more of the code. However, let me just point out that MATLAB Coder performs some optimizations. If you had code like this
n = 1;
if ~isreal(x)
n = n + 1;
end
You will probably see
n = 2.0;
generated if x is not real. Is it possible that after your assignment there are statements that the compiler can evaluate during compilation because the values/conditions are already known? -- Mike
0 Comments
This question is closed.
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!