argv[1] 路径问题
在看《学习opencv》一书时遇到一个小问题:函数只是通过argv传递参数来读取图片并显示,但是却一直弹出画布,没有图像。
如下:test.c
# include<stdio.h>
#include <opencv/cv.h>
#include <opencv/cxcore.h>
#include <opencv/highgui.h>
int main(int argc, char **argv)
{ IplImage *img = cvLoadImage( argv[],);
cvNamedWindow("Example", CV_WINDOW_AUTOSIZE);
cvShowImage("Example", img);
cvWaitKey();
cvReleaseImage(&img);
cvDestroyWindow("Example"); return ; }
使用 argv[1]传参的方法有两种
1)点击项目——某某属性——调试——命令参数——写入调用的图片的地址,我的路径是:E:\visual studio 2013\project\opencv_test\dab.jpg
我发现路径中有空格,所以我换了一个路径:G:\360downloads\dab.jpg 结果成功了。注意如果有多个参数只需在命令参数中空格隔开即可。
2)打开cmd,找到并进入test.exe的路径后,按这样的格式(路径名 参数)写,以我的为例: E:\visual studio 2013\project\SIFT_lps\text\Debug>text.exe G:\360downloads\dab.jpg
注:
cvLoadImage( filename, -1 ); 默认读取图像的原通道数
cvLoadImage( filename, 0 ); 强制转化读取图像为灰度图
cvLoadImage( filename, 1 ); 读取彩色图
补充:对于main函数原型: int main(int argc, char*argv[]), 形参argc和argv为main函数提供了命令行参数的机制。拿上文中的test.exe为例
终端(win下)中执行 text.exe opt1 opt2 opt3 会导致main中出现如下的行参数值:
argc 4 argv[0] "test.exe"
argv[1] "opt1"
argv[2] "opt2"
argv[3] "opt3"
argv[4] " "(空字符串)
argv[1] 路径问题的更多相关文章
- C++中argc和argv
C++中argc和argv C/C++中关于main()函数中argc 和argv[]的说明 main(int argc,char *argv[]); argc代表命令行输入参数的个数 argv存储了 ...
- OpenCV(三) 之 基本数据结构 CvMat和 IplImage
OpenCV(三) 之 基本数据结构 CvMat和 IplImage CvMat IplImage OpenCv中基本的数据类型 类型 参数 表示 CvPoint int x,y 像素点 CvPoin ...
- 理解 OpenStack + Ceph (3):Ceph RBD 接口和工具 [Ceph RBD API and Tools]
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...
- php实现图片加密解密,支持加盐
一个简单的图片加解密函数 使用client跑,不要使用浏览器跑 qq845875470 ,技术交流 <?php /** * Created by hello. * User: qq 845875 ...
- Poco库网络模块例子解析1-------字典查询
Poco的网络模块在Poco::Net名字空间下定义 下面是字典例子解析 #include "Poco/Net/StreamSocket.h" //流式套接字 #include ...
- Python读写文件你真的了解吗?
内容概述 Python文件操作 针对大文件如何操作 为什么不能修改文件? 你需要知道的基本知识 1. Python文件操作 这一部分内容不是重点,因为很简单网上很多,主要看看文件操作的步骤就可以了. ...
- Python2 - 基础2 - 数据类型和模块
一.数据类型 标准数据类型(5): Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) 其中数字类型有4种: int(有符号整型) 在3 ...
- C++使用SQLite步骤及示例
C++使用SQLite步骤及示例开发环境:Windows 10+VS2013. 开发语言:C++. 1. 下载sqlite文件. 下载网址:http://www.sqlite.org/downlo ...
- 其他pyton笔记
#小部分老男孩pyton课程 #所有脚本第一句话都要写解释以下脚本是用什么解释器 #!/usr/bin/env python #语言设置为:简体中文 #_*_coding:utf-8_*_ ##### ...
随机推荐
- 自学Python6.1-模块简介
自学Python之路-Python基础+模块+面向对象自学Python之路-Python网络编程自学Python之路-Python并发编程+数据库+前端自学Python之路-django 自学Pyth ...
- time_t和difftime
在C++中,下面这段代码可以获取一段时间差. time_t t1 = time(NULL); Sleep(); time_t t2 = time(NULL); cout << diffti ...
- A1101. Quick Sort
There is a classical process named partition in the famous quick sort algorithm. In this process we ...
- Linux:批量修改分隔符(awk、BEGIN、FS、OFS、print、tr命令)
批量修改文件的分隔符,可以用FS和OFS命令 FS:Field Separator,字段分隔符 OFS:Out of Field Separator,输出字段分隔符 修改空格为分隔符 假设有这么一个文 ...
- Java中FTPClient上传中文目录、中文文件名乱码问题解决方法【好用】
转: Java中FTPClient上传中文目录.中文文件名乱码问题解决方法 问题描述: 使用org.apache.commons.net.ftp.FTPClient创建中文目录.上传中文文件名时,目录 ...
- MQ与webservice的区别,MQ的区别
Webservice 和MQ(MessageQueue)都是解决跨平台通信的常用手段,两者有哪些区别呢? 个人认为最本质的区别在于 Webservice近乎实时通信,而MQ却通常是延时通信. 什么意思 ...
- (compareTo) How Many Fibs hdu1316 && ZOJ1962
How Many Fibs? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) T ...
- 十、java_IO
目录: 一.java流式输入/输出原理 二.java流类的分类 三.输入/输出流类 四.常见的节点流和处理流 五.文件流 六.缓冲流 七.数据流 八.转换流 九.Print流 十.Ubject流 一. ...
- java生成二维码(最初版)
研究了2个小时,发现自己竟然智障,用原先的图片覆盖另一个图片 package com.tz.util; import java.awt.Color;import java.awt.Graphics2D ...
- Hadoop生态圈-HUE环境部署
Hadoop生态圈-HUE环境部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HUE简介 1>.HUE的由来 HUE全称是HadoopUser Experienc ...