4
回答
matlab的开源问题
注册华为云得mate10,2.9折抢先购!>>>   

我想请教各位大侠:MATLAB的数学处理库是不是开源的,如果是,那么这些库应该是C或C++的吧,M文件应该是调用这些库呀,这样一来M语言就是一个SHELL啦》???如果这样MATLAB里应该有C编译的呀!那么C编译器和MATLAB的编译器的关系怎样呀! 既然有C编译器,那么为什么不能生成可执行文件?!!    我上述的想法一定有哪儿有错了,请各位指教!!    

    

举报
李小好
发帖于8年前 4回/2K+阅
共有4个答案 最后回答: 7年前

你的想法没有错,matlab可以嵌入C编译器。就现在所用的MATLAB也是用C开发的,我们可以用MATLAB具有强大的数值计算能力但是缺陷就是速度比较不理想。可以将C与MATLAB结合做出更强健的应用……

谢谢2楼:   但问题就是我搞不懂:既然MATLAB是C开发的,那MATLAB编译环境里应该嵌有C编译器的呀, 既然有C编译器,那为什么生不成可执行应用程序。   现在学MATLAB又是编程语言,又是GUI,又是接口调用C,又是simulink应用,乱七八糟, 为什么就没有人介绍介绍底层的东西,实质的东西?!!!欢迎大家参与讨论! 

经过几个星期的学习,终于搞懂了一些, 还做了一个小项目, MATLAB还真是庞大, 几乎集成了我听说过的大多数IT技术!!!

“可不可以生成可执行程序” 与 “提不提供生成可执行程序的功能” 是两码事哈。前者是技术问题,对于Matlab来说完全不是问题;后者是商业模式问题。其实,Matlab提供让M代码生成Exe文件的方法,但是还是要它提供的Runtime才能运行。说白了,MathWorks就是要让你依赖于Matlab。

Matlab所调用的底层运算函数大多是用Fortran和C实现,界面是用Java实现的。它本身自带了一个C编译器LCC,但好像连标准C库都支持不全,所以还是需要自己设定编译器选项。

顶部