int main(int argc,char* argv[]) 为什么 argc 给出 2 个参数
int main(int argc,char* argv[]) why does argc gives 2 argument?
如果我正确理解了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 ?
如果我正确理解使用"int main(int argc,char* argv[])",每当我声明 4 整数 argc 必须是 5。
argc
和argv
与您在程序中声明的变量数量无关。 argc
表示从命令行运行它时提供的参数数。 argv
是指向参数(包括程序本身的名称)的字符指针数组。
假设您的程序名为 proc
。您需要从命令行运行它(否则您需要从 IDE 中找出如何提供命令行参数)。
./proc 5 10 15 20
数字 5、10、15、20 将是你的argv[1]
.. argv[4]
您应该从命令行输入不少于4个参数。
按space
分隔参数。
Int argc 是参数计数,表示您传递的参数数,包括程序名称。
字符指针数组表示参数
相关文章:
- 视频捕获与" int main(int argc, char **argv) "
- 为什么现代C 仍然保留旧的C样式原型,用于int argc,char ** argv
- 函数main中的参数argv(int argc,char *argv [])
- C++ (int getopt(argc, (char **)argv, optstring)
- C++ 从节点模拟 int main(int argc, char *argv[])
- char *argv []和int argc c 的全局覆盖范围
- 'int main(int argc, char* argv<::>)' 如何成为 main 的有效签名?
- C++ int main (int argc, char *argv[]) - 是 argv a c 样式数组
- 如何使用int main(int argc,char*argv[])运行c++proram
- 绕过 SDL2 中的"int main(int argc, char** argv)"
- int main(int argc,char* argv[]) 为什么 argc 给出 2 个参数
- OpenCV中int main(int argc,char**argv)中argc和argv的意义
- 使用 int main(void) 编译失败;main(int argc, char *argv[]) successs
- int main(int argc, char **argv)
- GTEST_API_ int main(int argc, char **argv){}中的GTEST_API_是什么?
- 如何在c++的main函数之外使用int argc,char *argv[]
- 关于缺乏"int main(int argc, char* argv[])"知识
- int _tmain(int argc, _TCHAR* argv[])
- 如何从终端启动C应用程序,并将参数传递给int main(int argc,char*argv[])
- main(int argc, char* argv[]) dont understand