Info
此问题已关闭。 请重新打开它进行编辑或回答。
matlab to c
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
Kaustubha Govind
2011-7-28
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.
回答(2 个)
Walter Roberson
2011-7-28
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 个评论
Arnaud Miege
2011-7-29
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
2011-8-1
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 个评论
此问题已关闭。
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!