检查 argv[i] 是否存在C++

Checking if argv[i] exists C++

本文关键字:是否 存在 C++ argv 检查      更新时间:2023-10-16

如果我运行了一个C++程序

./program arg1

argv[1] 存在,但是有没有办法检查 argv[2] 是否存在?

是的

,看看argc的值:

if (argc > 2) {
  ... use argv[2] ...
}

是的argv[i]NULL 结尾。 argc number of arguments传递给主函数。从以下代码中获取想法。

#include<stdio.h>
int main(int argc, char* argv[]){
    int i=0;
    while(argv[i]!=NULL){
        printf("n %s is argv %d ",argv[i],i);
            i++;
    }
        
    printf("n");
}

执行:

desktop:~$ gcc main.c  -o main 
desktop:~$ ./main grijesh thisiscrazy4

这里:

./main is argv 0 
grijesh is argv 1
thisiscrazy4 is argv 2

h这里 argv 是 - "./main", "grijesh"," thisiscrazy4", NULLargc = 3 .

argv[0] 是可用于使用错误语句进行 pint 的可执行文件名称(执行路径).
argv称为参数向量,argc称为参数计数器。您也可以使用另一个变量名称。

阅读 main() 函数的完整语法,其中还包括环境变量。

int main (int argc, char *argv[], char *envp[])
{
  return 0;
}

学习听力

main的原型说明了一切:

int main(int argc, char **argv);

这里的第一个参数argc带有 Number_Of_Arguments(argv[])_Present 的值

你可以反过来尝试。测试argc的计数,在那里你可以知道argv[n]的存在。