命令行编程

sprintf的使用
头文件:stdio.h
函数功能:格式化字符串,将格式化的数据写入字符串中。
函数原型:int sprintf(char *buffer, const char *format, [argument]…)
参数:
(1)buffer:是char类型的指针,指向写入的字符串指针;
(2)format:格式化字符串,即在程序中想要的格式;
(3)argument:可选参数,可以为任意类型的数据;
函数返回值:buffer指向的字符串的长度;
用处:
(1)格式化数字字符串:在这点上sprintf和printf的用法一样,只是打印到的位置不同而已,前者打印给buffer字符串,后者打印给标准输出,所以sprintf也可以用来将整型转化为字符串,比itoa效率高且如此地简便~比如:sprintf(buffer, “%d”, 123456);执行后buffer即指向字符串“123456”~
(2)连接字符:
VS2010+命令行编程、命令行参数
https://blog.csdn.net/liqian_blog/article/details/80111027

使用 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 ); 读取彩色图

把int main(int argc,char* argv[])传入的参数转成整数(int):int a = atoi(argv[1]);

猜你喜欢

转载自blog.csdn.net/weixin_42597880/article/details/81673118