2018-11-15C++ main函数中argc和argv的用法

本文参考:
https://blog.csdn.net/dcrmg/article/details/51987413
https://blog.csdn.net/Eastmount/article/details/20413773
argc即为argument count的缩写,表示传入main函数的参数个数;
argv即为argument vector的缩写,表示传入main函数的参数序列或指针,并且第一个参数argv[0]一定是程序的名称,并且包含了程序所在的完整路径,所以确切的说需要我们输入的main函数的参数个数应该是argc-1个;空格分隔参数,其长度为argc.数组下标从0开始,argv[argc]=NULL.
argv[0] 指向程序运行时的全路径名
argv[1] 指向程序在命令中执行程序名后的第一个字符串
argv[2] 指向执行程序名后的第二个字符串
argv[argc] 为NULL.


#include 
 
using namespace std;
 
void main(int argc,char *argv[])
{
    for(int i=0;i

argv是指向指针的指针,main函数的第二个参数“char *argv[]“也可以替换为 “char **argv“,两者是等价的。

在编译环境下按F5运行,输出如下:


image.png

可见,在没有参数传入的情况下,保存程序名称的第一个变量argv[0]依然存在。

传参数给main函数有两种方法,第一种方式是在编译环境中设置,以vs2012为例,右击项目—>属性—>配置属性—>调试—>命令参数,在命令参数中输入,每个参数之间用空格隔开。
之后点击确定并应用,运行之后显示如下:


image.png

第二种方式也是经常会用到的方式是通过命令提示符传入。首先需要打开命令提示符窗口,点击开始菜单在“搜索程序和文件”里输入命令“cmd”或者直接按快捷键 Windows+R,在弹出的对话框里输入“cmd”即可打开命令提示符窗口:

image.png

打开命令提示符窗口后需要输入生成的exe文件所在的完整路径,一个简便的方法是把exe文件直接拖入提示符窗口即可,之后输入传入参数,以空格分隔,之后回车,显示如下:

image.png

你可能感兴趣的:(2018-11-15C++ main函数中argc和argv的用法)