神刀安全网

小朋友学C语言(34):main函数的参数

C/C++中的main()函数,可以带形式参数,也可以不带形式参数。这两种形式分别为:
int main()
int main(int argc, char *argv[]) 或者 int main(int argc, char **argv)
因为main()函数通常是由操作系统调用的,所以平时写程序,基本上不用带参数。但是从学习的角度来看,了解一下参数也是有益处的。

第一个参数,argc是argument count的缩写,表示“参数个数”。
第二个参数,argv[]是argument vector的缩写,表示指向字符串(即字符数组)的指针数组。咱们之前学过指针,那么指针数组是什么意思呢?顾名思义,指针数组是表示一组指针。
指向字符串的指针数组就表示为:有一组指针,这组指针里的每个指针,都指向了一个字符串。

下面用一个具体的程序,来帮助理解。这个程序是在Win 10系统下用Dev C++编的。

#include <stdio.h>  int main(int argc, char *argv[])  {     printf("There are %d arguments in total/n", argc);          int i;     for(i = 0; i < argc; i ++)     {         printf("Argument %d = %s/n", i+1, argv[i]);     }          return 0; } 

程序编完之后保存,但不要编译,可以看到源文件有两个:

小朋友学C语言(34):main函数的参数

1.png

点击“编译”按纽后,多了test.o和Test.exe文件。

小朋友学C语言(34):main函数的参数

2.png

test.o为目标文件,这里的o即为Object的缩写。
test.o进一步转化为Test.exe。Test.exe是Windows操作系统下的可执行文件。exe是Executable的缩写。

小朋友学C语言(34):main函数的参数

3.png

点击“Run”按纽,实际上就是运行Test.exe文件

小朋友学C语言(34):main函数的参数

4.png

运行结果为

小朋友学C语言(34):main函数的参数

5.png

exe文件后面是可以带参数的。下面,用另一种方式运行Test.exe,并且后面带上参数。
打开命令行窗口,输入F:/C_Projects/Test.exe how are you?
这种形式是可执行文件后面带了三个参数,以分隔号来表示。

小朋友学C语言(34):main函数的参数

6.png

如果不加任何参数,在命令行窗口执行exe文件,就相当于点击编译器里的“Run”按纽

小朋友学C语言(34):main函数的参数

7.png

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » 小朋友学C语言(34):main函数的参数

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址