FileID pass as function argument for Matlab Coder gen
显示 更早的评论
I need to generate a function with FileID as argument. The matlab code looks like this:
outfileId = fopen('test_c.csv', 'w'); func1(outfileId);
when generate the C++ using Matlab Coder, it automatically recognize the argument type as double. And the generated C++ is something like this: func1(double outfileId){ FILE * filestar; getfilestar(outfileId, &filestar, &autoflush); .. using filestar for file processing. }
My question is: how do I assign the value when I call func1 in my manually modeled C++. (e.g. need reverse function of getfilestar).
( Currently, I manually update the generated code by commenting out getfilestar and directly passing filestar as argument. And it works)
Thanks a lot!
1 个评论
Denis Gurchenkov
2018-2-28
Likai, if you want to call func1 from your hand-written C++ code, then you should have two entry-point matlab functions when generating code. One function would return the double that corresponds to file handle, and the other one would take a double as an input, and call func1.
So your C++ code first calls the first entry point to open the file, gets the double value, and then passes it to the 2nd entry pont.
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 MATLAB Coder 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!