2014-03-19 52 views
1

对于我正在开发的项目,我正在准备MATLAB数据,然后通过一个名为Model v2.exe的独立外部应用程序(用C++编写)运行数据,然后使用在MATLAB中输出。我正在尝试创建一个能够完成所有这些工作的M文件,但我正努力从我的MATLAB代码中启动C++程序。从m.file运行C++程序

如何从我的MATLAB代码中启动外部应用程序?

+0

只是猜测:如果外部C++应用程序也是你自己的,你也可以将它建立为共享库并直接从matlab中调用它。这比发出'system()'调用要少得多。 – sebastian

回答

1

您可以使用!运算符或system()命令。

首先,将您的应用程序重命名为名称中没有空格的内容,例如modelv2.exe。接下来,请确保它位于系统环境变量所定义的系统路径中,或者生成完整路径(例如:C:\Users\Phil\Desktop\modelv2.exe)。

!modelv2 

或:

您可以使用感叹号或系统命令调用命令行的可执行程序

!C:\Users\Phil\Desktop\modelv2.exe 

会导致Windows执行程序,如果用hello.exe在当前目录或系统路径中有这样一个文件。或者:

system('modelv2'); 

system('C:\Users\Phil\Desktop\modelv2.exe'); 

会做同样的事情。

参考


  1. “MATLAB中心 - 调用,并在Windows下运行MATLAB外部程序”,访问的2014年3月19日,<http://www.mathworks.com/matlabcentral/answers/11568-call-and-run-an-external-program-in-matlab-under-windows>
+0

感谢Dogbert,很有帮助。 – user3302244

+0

如果外部程序需要输入参数会发生什么情况?那么怎么做呢? – Hec46

+0

@ Hec46 https://www.mathworks.com/matlabcentral/newsreader/view_thread/236511 – DevNull