用c语言编写的读取mat文件(matlab矩阵)的程序,有错,求帮助

用c语言编写的读取mat文件(matlab矩阵)的程序,有错,求帮助,第1张

从错误提示上,就是两个变量未定义导致的链接错误

你先搜索整个工程,error提示中的两个变量在哪里用到

另外,也有可能是 include导入的头文件问题

比如没导入必要的库

或者是导入的库有问题

看你这段代码没有这两个变量,可能是其他文件或者使用的库的问题

导入的库也有依赖关系,使用前应该看看使用说明吧

还有其他可能就是,本机的环境变量设定的问题

信息不够,暂时只能帮你分析到这里

如果还有疑问,加QQ 11302106,把代码传过来,帮你解决

另外,验证的时候要写清楚 请求的原因

不知道你是如何去读取数据的。对于复数这种数据的读取,你可以通过重载函数或者自己专门写一个函数方法来读取。因为复数包含实部+虚部,所以在你的这个函数方法里应该是包含这两部分的分别读取,读取后保存在自己定义的复数类型中。

生成MAT文件

假如你的矩阵A.B都已赋值,现在需要将A,B矩阵保存成mat格式文件,执行如下命令:save mydata A B 就会把A B矩阵数据保存在mydata.dat文件中了

保存指定数据为MAT文件:假如我们只想保存A矩阵,那么,我们可以用如下命令:save mydata2 A 回车

这样就可以将矩阵A单独保存起来了

保存所有数据为MAT文件:如果有多个矩阵,我们都需要将其保存,如果我们这样写,save mydata2 A B C D。。。。这样写会很麻烦,我们直接用下面命令便可:

save mydata3 回车

这样就会把当前运行空间所有的变量都保存到mydata3.mat文件中了

读取mat文件所有数据:首先是将你想打开的mat文件所在的目录设置为当前工作目录,然后执行如下命令:load mydata,就会将mydata中的所有数据加载到当前工作环境中;

读取MAT文件指定数据:在设定完当前目录之后,我们如果仅仅想读取MAT文件中的指定数据,例如在上面保存的mydata3中,我们只想读取其中的矩阵A,那么我们可以用如下命令:load mydata3 A,我们可以看到A矩阵被成功加载到了当前工作空间,如图中右侧红框,而B矩阵并没有被加载。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/8010554.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存