关于C语言的 argc和argv 问题 30
C语言里intmain(intargc,char**argv)intmain(intargc,char**argv){IplImage*pImg;//声明IplImage...
C语言里 int main( int argc, char** argv )int main( int argc, char** argv ){ IplImage* pImg; //声明IplImage指针 //载入图像 if( argc == 2 && (pImg = cvLoadImage( argv[1], 1)) != 0 )
{ cvNamedWindow( "Image", 1 ); //创建窗口 cvShowImage( "Image", pImg ); //显示图像 cvWaitKey(0); //等待按键 cvDestroyWindow( "Image" );//销毁窗口 cvReleaseImage( &pImg ); //释放图像 return 0; } return -1;}argc和argv有什么用啊?他们存在的意义是什么,还有为什么这段程序它要用argc==2来判断,为什么cvloadimage函数里第一个参数是argv[1]? 展开
{ cvNamedWindow( "Image", 1 ); //创建窗口 cvShowImage( "Image", pImg ); //显示图像 cvWaitKey(0); //等待按键 cvDestroyWindow( "Image" );//销毁窗口 cvReleaseImage( &pImg ); //释放图像 return 0; } return -1;}argc和argv有什么用啊?他们存在的意义是什么,还有为什么这段程序它要用argc==2来判断,为什么cvloadimage函数里第一个参数是argv[1]? 展开
2个回答
展开全部
argc和argv的作用是接收命令行参数的,假设你的程序编译链接后的文件是cccc.exe ,那么就可以用cccc.exe p1 p2的格式运行该程序, 字符串p1,p2就是程序的参数,不需要在程序运行时才输入。
还有为什么这段程序它要用argc==2来判断,为什么cvloadimage函数里第一个参数是argv[1]?
因为第一个参数是这个可执行文件本身,虽然并没有出现在命令行里,所以没有参数时argc==1,argv[0]就是该可执行文件的文件名字符串,那么有一个参数时,argc==2,参数字符串就是argv[1]了,多个参数以此类推
还有为什么这段程序它要用argc==2来判断,为什么cvloadimage函数里第一个参数是argv[1]?
因为第一个参数是这个可执行文件本身,虽然并没有出现在命令行里,所以没有参数时argc==1,argv[0]就是该可执行文件的文件名字符串,那么有一个参数时,argc==2,参数字符串就是argv[1]了,多个参数以此类推
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询