关于c++ Main函数分析与讲解

本文介绍了C++中int main(int argc, char* argv[])函数的基本概念和作用,强调了它是控制台程序的入口。文章通过实例解析了argc和argv参数的含义,以及如何在DOS环境下通过命令行传递参数到main函数。通过分析代码if (argc == 2 && (pImg = cvLoadImage(argv[1], 0)) != 0),解释了如何利用argv[1]加载图像并进行条件判断。同时,文章还指导了在VC6.0环境中如何设置Project Settings以传递参数。" 105601250,8012319,JDK8在Windows10上的快速安装指南,"['Java', 'Windows', '开发环境']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在c++的控制台程序开发过程中,很多人对与函数int main(int argc, char* argv[])不甚了解,经常会问一些基础性的问题,刚开始以为只是个别的人不清楚,时间一长,发现不懂的人还是比较多的。当然对于这类情况,很多人选择在DOS下运行,通过切换到当前目录,然后把参数来解决。其实这不是最好的办法,而且每次调试和编译都在DOS下进行,给程序开发带来了诸多的不便,于是写下这篇日记,希望能给那些不甚理解int main(int argc, char* argv[])函数的朋友一个解释,能帮助到你们不甚兴奋。

       首先,来分析这个函数int main(int argc, char* argv[]),该函数是控制台程序的入口程序,C语言规定main函数的参数只能有两个,习惯上这两个参数写为argc和argv,C语言还规定argc(第一个形参)必须是整型变量,argv( 第二个形参)必须是指向字符串的指针数组。其中argc表示的是main函数接受的参数的个数,argv是参数值。在DOS提示符下命令行的一般形式为: C:\>可执行文件名 参数 参数。     下面,我们来看一个实例,在c++中if( argc == 2 &&  (pImg = cvLoadImage( argv[1], 0)) != 0 )有这个一个判断函数,其中的意思是什么呢?其是判断main函数传进来的参数是不是两个,然后从第二个参数argv[1](数组下标从0开始)给出的路径加载一幅图像,并判断是否成功。但是参数是怎么传进去的呢?很多人都不明白。继续以VC6.0环境为例进行讲解,Main函数的参数是通过“Project-Settings“跳出对话框:   图中的"Executable for debug session:下面的参数”D:\VCProjects\UltiApp\Debug\UltiApp.exe“表示的就是在DOS提示符下命令行的一般形式为: C:\>可执行文件名,即为main函数传进去的第一个参数argv[0],下面的”123.JPG“就是第二个参数argv[1](如果123.JPG不在当前目录下的话,就要用绝对路径),也即为上面程序pImg = cvLoadImage( argv[1], 0)中传给cvLoadImage的参数argv[1],如果main函数需要传入更多的参数,那么就在Program arguments中输入多个参数,每个参数用空格隔开,如123.JPG 234.JPG等。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值