总有一天 发表于 2007-5-13 11:13

求助高手C++builder调用matlab编程问题

我做毕设要用这个,但是出不来,不懂问题在哪里,所以向高手求助,谢谢!!
我已经按部就班的把接下来的步骤完成:
1. 在头文件中加入Engine.h。其包含了启动Matlab调用和关闭的函数声明。
2. 打开Project|Option...对话框,点击Directories/Conditionals。
● 在Include Path中,加入目录路径<matlab>\extern\include,该路径包含了engine.h和matlab.h等有用的头文件。
● 在Library Path中,加入<matlab>\bin和<matlab>\extern\include。这两个目录路径包含了可外部调用的DLL和LIB文件。
3. 点选Project|Add to Project...对话框,加入如下库文件:
_libeng.lib,_libmat.lib和_libmx.lib。
然后写了小程序尝试,其源代码是:
void DemoMatlab()
{
   Engine *eng=NULL;
   //
   char buffer;
   mxArray *S=NULL;
   engOpen(NULL);
   //
   engEvalString(eng "I = imread('bag.png')" );
   engEvalString(eng"figure, imshow(I)");
   engClose(eng);
   mxDestroyArray(S);
}
想试试看,但是总出现 Try.cpp(33): E2121 Function call missing )错误指向
engEvalString(eng "I = imread('bag.png')" );
我不太会,可能问题比较浅显,大侠们不要笑话,希望能得到帮助,谢谢!!

[ 本帖最后由 eight 于 2007-5-13 11:15 编辑 ]

eight 发表于 2007-5-13 11:17

engEvalString(eng "I = imread('bag.png')" );
engEvalString(eng"figure, imshow(I)");


改为

   engEvalString(eng, "I = imread('bag.png')" );
   engEvalString(eng,"figure, imshow(I)");

总有一天 发表于 2007-5-13 12:19

不好意思,竟然是语法错误,真是崩溃
改正过来了,不过又出现新问题了,编译时出现了 Fatal: Expected a file name:
然后我就去找文件,觉得可能是因为imread和imshow,但是不知道应该加入什么文件才对

[ 本帖最后由 总有一天 于 2007-5-13 12:21 编辑 ]

eight 发表于 2007-5-13 23:32

原帖由 总有一天 于 2007-5-13 12:19 发表 http://www.chinavib.com/forum/images/common/back.gif
不好意思,竟然是语法错误,真是崩溃
改正过来了,不过又出现新问题了,编译时出现了 Fatal: Expected a file name:
然后我就去找文件,觉得可能是因为imread和imshow,但是不知道应该加 ...


图片路径问题,建议把图片放到当前目录下,或者在程序中给出具体路径
页: [1]
查看完整版本: 求助高手C++builder调用matlab编程问题