gpt4 book ai didi

c++ - int main(int argc,char* argv[]) 为什么argc给出2个参数?

转载 作者:行者123 更新时间:2023-11-30 21:17:48 25 4
gpt4 key购买 nike

如果我理解正确的话 int main(int argc,char* argv[]) 的使用,每当我声明 4 个整数 argc 时,它必须是 5。例如;

int main(int argc,char* argv[])
{
int portNb = 0;
int leftMotorHandle;
int rightMotorHandle;
int sensorHandle;


if (argc>=5)
{
portNb=atoi(argv[1]);
leftMotorHandle=atoi(argv[2]);
rightMotorHandle=atoi(argv[3]);
sensorHandle=atoi(argv[4]);
}
else
{
printf("Indicate following arguments: 'portNumber leftMotorHandle rightMotorHandle sensorHandle'!\n");
extApi_sleepMs(55000);
return 0;
}

但是当我调试代码时argc的值为2。我如何确定 argc 的值为 5 ?

最佳答案

If I understood correctly using of 'int main(int argc,char* argv[])' , whenever I've declared 4 integer argc must be 5.

argcargv 与您在程序中声明的变量数量无关。 argc 表示从命令行运行时提供的参数数量。 argv 是指向您的参数(包括程序本身的名称)的 char 指针数组。

假设您的程序名为proc。您需要从命令行运行它(否则您需要从 IDE 中找出如何提供命令行参数)。

./proc 5 10 15 20

数字 5、10、15、20 将是​​您的 argv[1] .. argv[4]

关于c++ - int main(int argc,char* argv[]) 为什么argc给出2个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35190311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com