注册 登录
编程论坛 C++教室

这是什么问题?哪位大神指教一下

yljyljylj 发布于 2013-10-13 10:11, 341 次点击

#include "stdafx.h"
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include "math.h"
int main(int argc, char* argv[])
{
    IplImage* src=0;
    IplImage* dst=0;
    double scale=0.618;
    CvSize dst_cvsize;
    if(argc==2&&(src=cvLoadImage("D://shiyan.jpg",-1))!=0)
    {
    dst_cvsize.width=(int)(src->width*scale);
    dst_cvsize.height=(int)(src->height*scale);
    dst=cvCreateImage(dst_cvsize,src->depth,src->nChannels);//创建缩放图像的框架
    cvResize(src,dst,CV_INTER_LINEAR);//调用此函数,把缩小的图像放在dst中
    cvNamedWindow("src",CV_WINDOW_AUTOSIZE);
    cvNamedWindow("dst",CV_WINDOW_AUTOSIZE);
    cvShowImage("src",src);
    cvShowImage("dst",dst);
    cvWaitKey(0);
    cvReleaseImage(&src);
    cvReleaseImage(&dst);
    cvDestroyWindow("src");
    cvDestroyWindow("dst");   
    }
    return 0;

}
不是特别清楚argc这个参数判定条件有什么意义?只知道一个是存储参数的个数,另一个是参数的数组,看了些资料不是很明白?求指教,还有这幅图像加载以后没有结果,图像显示不了>>??


2 回复
#2
yuccn2013-10-13 14:22
不是特别清楚argc这个参数判定条件有什么意义 参数个数,主要用于检查参数的个数是否是你期待的。
 比如 argc 为3 时候,你就可以访问argv[0], argv[1], argv[2]了

打个比方,ping命令你用过把,ping www.baidu.com。
那么 ping.exe 的主函数的argc 就是2.argv[0] 就是ping.exe 的完整路径了, argv[1] 就是 www.baidu.com

至于这幅图像加载以后没有结果,这个你就调试一下了,失败应该有个错误码之类的什么的
#3
pauljames2013-10-16 20:54
命令行的参数,argc为参数个数,argv为参数字符串
1