Matlab 运行C++;从一个m文件中提取程序
对于我正在进行的一个项目,我在MATLAB中准备数据,然后通过名为Matlab 运行C++;从一个m文件中提取程序,matlab,Matlab,对于我正在进行的一个项目,我在MATLAB中准备数据,然后通过名为Model v2.exe的单独外部应用程序(用C++编写)运行数据,然后在MATLAB中对输出进行进一步分析。我正在尝试创建一个M-文件,它完成了所有这些任务,但是我正在努力让C++程序从我的MATLAB代码中启动。 如何从MATLAB代码中启动外部应用程序?您可以使用运算符或系统()命令 首先,将应用程序重命名为名称中没有空格的名称,如modelv2.exe。接下来,请确保它位于系统环境变量定义的系统路径中,或者生成指向它的完整
Model v2.exe
的单独外部应用程序(用C++编写)运行数据,然后在MATLAB中对输出进行进一步分析。我正在尝试创建一个M-文件,它完成了所有这些任务,但是我正在努力让C++程序从我的MATLAB代码中启动。
如何从MATLAB代码中启动外部应用程序?您可以使用
代码>运算符或系统()
命令
首先,将应用程序重命名为名称中没有空格的名称,如modelv2.exe
。接下来,请确保它位于系统环境变量定义的系统路径中,或者生成指向它的完整路径(例如:C:\Users\Phil\Desktop\modelv2.exe
)
您可以使用感叹号或系统命令从命令行调用可执行程序:
!modelv2
或:
如果当前目录或系统路径中存在这样的文件,将导致Windows执行hello.exe程序。或者:
system('modelv2');
或
我也会做同样的事情
参考资料
“MATLAB Central-在windows下调用并运行MATLAB中的外部程序”,访问日期2014-03-19
谢谢Dogbert,非常好的帮助。如果外部程序需要输入参数,会发生什么?那么,它是如何完成的呢?只是猜测:如果外部C++应用程序也是你的,你也可以把它构建为一个共享库,并直接从MATLAB调用它。这比发出system()
调用的开销要少得多。
system('modelv2');
system('C:\Users\Phil\Desktop\modelv2.exe');