更多课程 选择中心

C/C++培训
达内IT学院

400-996-5531

main函数中的argc和argv到底是个啥?

  • 发布:C++培训
  • 来源:C++资讯
  • 时间:2020-11-30 14:57

今天和大家讨论一个常见的但是不容易深入了解的知识点。那就是 main 函数声明中使用到的 argc 和 argv 的含义。通常我们写主函数的时候一般都是直接使用int main() 或者 void main() 来声明 main 函数。

但是你知道吗?在c89/c99的语言标准中,main函数的声明方式还包括以下形式:

int main(int argc,char **argv)

int main(int argc,char *argv[])

以上两种 main 函数的声明方式具有相同的含义。argc 和 argv 的主要用途为程序运行时,将命令行中的输入参数传递给调用函数。

这两个参数的意义分别如下:

int argc:参数个数计数,是一个 int 变量,取值为「用户调用程序输入的参数」+ 1。

为什么要加 1 呢?

char **argv:一个存储字符串的数组,会以字符串的形式保存用户调用程序时传入的参数。

argv[0] = 调用程序时使用的程序名

argv[1] = 参数1

argv[2] = 参数2

argv[3] = 参数3

。。。

现在大家知道为什么 argc 的取值要 +1了吧!原因就在于 argv 中存储的第一个字符串是调用程序名。

下面我们动手实践一下,将下面的代码编译后生成对应的可执行程序(.exe)后运行。

#include <stdio.h>

#include <stdlib.h>

int main(int argc, char* argv[])

{

printf("参数个数=%d\n", argc);

for (int i = 0; i < argc; i++)

{

printf("%s\n", argv[i]);

}

system("PAUSE");

return 0;

}

在操作系统中打开一个命令行。

windows 操作系统 win + R 快捷键打开搜索框,输入 cmd 回车即可。

linux 操作系统 ctrl + alt + t 快捷键即可。

当你还在担心能否就业时,达内学员提前被企业录取;当你转辗于各大招聘会时,达内学员收到了高薪offer;当你在各大招聘网站投递简历时,达内学员中有人一毕业进入五百强名企。所以选择很重要。找C++培训班,选达内就对了。

版权声明:转载文章来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:详细讲解C语言中插值查找法
下一篇:C语言从入门到精通看什么书?

C语言宏定义的几种使用方法

C与C++内存管理避坑指南

C/C++代码规范注释有哪些讲究?

C语言中,全局变量滥用的后果竟如此严重?

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省