我生成了如下代码来加载mat文件
data=coder.load('data.mat');
a=data.a;
b=data.b;
由于其中一个变量(例如“ a”)很大,因此在主函数中将其定义为大的静态const数组,并在此初始化了所有值。
有什么方法可以使MATLAB Coder从C代码的文件中加载数据,而不是将其定义为主函数中的变量?
答案 0 :(得分:2)
代码生成支持使用MATLAB fread
函数。因此,您可以将数据fwrite
fread
保存到MATLAB中的文件,然后在生成的代码中name
id
。这将进行运行时读取,并避免生成的代码中的巨型常量。
答案 1 :(得分:0)
这是我们根据瑞安的答案应使用的确切代码:
{
"_id" : "2015-05-31",
"contributions" : [
{
"entity_type_desc" : "INDIVIDUAL",
"contribution_receipt_amount" : 109.2,
},
{
"entity_type_desc" : "INDIVIDUAL",
"contribution_receipt_amount" : 105,
}
]
},
{
...
}
矩阵2现在与矩阵1相同。读写的技巧是根据数据类型使用相同的精度。