0

我一直在尝试为绝对年龄编译这个简单的代码,但没有运气。

#include "highgui.h"
#include "opencv2/highgui/highgui_c.h"
int main()
{    
   int cvNamedWindow(const char* name,int flags = CV_WINDOW_AUTOSIZE);
   {
        cvNamedWindow("sample");
   }

   cvDestroyWindow("sample");    
}

我正在使用 Ubuntu 12.04 平台。起初我收到错误说

highgui.h 未找到。

我现在已经纠正了,但现在我得到了新的。我使用的编译指令是:

gcc -o window window.c -I/usr/include/opencv/

新的错误是:

window.c:8:48: error: expected ‘;’, ‘,’ or ‘)’ before ‘=’ token
window.c:10:6: error: too few arguments to function ‘cvNamedWindow’

现在我什至不确定问题是什么了。OpenCV中的编译似乎没有任何明确的解释。请有人帮助因为我真的需要继续这样做,不能整天试图编译!谢谢

4

2 回答 2

0

C中没有默认参数

您应该cvNamedWindow()按如下方式调用:

cvNamedWindow("sample", CV_WINDOW_AUTOSIZE);

完整代码:

#include "highgui.h"
#include "opencv2/highgui/highgui_c.h"

int main() {    
   cvNamedWindow("sample",CV_WINDOW_AUTOSIZE);
   cvDestroyWindow("sample");
   return 0;
}
于 2013-02-03T07:41:43.073 回答
0

尝试编译这个:

#include "highgui.h"
#include "opencv2/highgui/highgui_c.h"
int main() {    
   cvNamedWindow("sample");


   cvDestroyWindow("sample");
   return 0;   
}
于 2013-02-03T00:48:28.007 回答