首页 > 作文

使用C/C++读写.mat文件的方法详解

更新时间:2023-04-06 02:03:24 阅读: 评论:0

最近需要使用c++来处理matlab生成的数据, 参考了网上一些博客,不过他们都是使用的v不起眼的暴利小生意s,我比较喜欢使用clion, 在配置的过程中也遇到了一些坑,记录一下。

一、创建工程并添加测试代码

创建工程就不说了,注意一下我使用的编译工具链是mingw。测试代码参考的matlab官方的程序:读取用 c/c++ 编写的 mat 文件 – matlab & simulink – mathworks 中国,对官方的代码进行了小小的调整。

将程序中的path替换为你的mat文件所在完整地址即可。

二、修改cmakelists文件

设置包含路径(相当于vs中的添加附加包《童年》好词含目录):

设置库目录(相当于vs中的添加附加库目录),以及需要包含的库(相当于vs中的添加附加依赖库):

下面是我的cmakelists文件的完整内容:

三、添加环境变量

添加下面的环境变量,注意替换matlab安装地址。

记得添加完环境变量后重启一下电脑。

重启完成后,对于部分人来说到这里整个配置就完成了,就能够运行程序了。但是部分人比如说我自己,在运行的时候出现下面的错误:

如果遇到这样的错误,请继续往下面看。

四、令人头秃的错误

对于上面的错误,我尝试了在网上搜索,可是没有找到解决的办法。然后我就使用vs配置了一遍,程序运行还是失败了,提示遇到了如下的错误:

出现这种问题的原因是dll动态库发生了冲突,我是因为添加了anaconda的环境变量,在anaconda中也有hdf5.dll文件,程序首先定位到了anaconda的dll文件,而不是matlab的dll文件,解决冲突的办法就是将anacomda的环境变量移动到matlab环境变量之后即可。

记得修改完环境变量之后重启一下电脑。

五、运行结果

解决完前面遇到的问题后,再次运行程序,可以看到成功了,程序输出结果如下:

directory of 欧洲启蒙运动d:\codes\matlab\dp-tbd\matlab_code\test.mat:
matrix

examining the header for each variable:
大学物理学according to its header, array matrix has 2 dimensions
and was a local variable when saved

reading in the actual array contents:
according to its contents, array matrix has 2 dimensions
and was a local variable when saved
done
success!

个人优势怎么写

process finished with exit code 0

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注www.887551.com的更多内容!

本文发布于:2023-04-06 02:03:23,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/1a5f7867ae19361185c06b9c41367550.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:使用C/C++读写.mat文件的方法详解.doc

本文 PDF 下载地址:使用C/C++读写.mat文件的方法详解.pdf

标签:环境变量   文件   程序   错误
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图