对C语言main函数中argc和argv[]的理解
·
***********************************argc的理解*******************************************
*****************************************************************************************
大家应该都有一个模糊的记忆,C语言中main函数是程序的入口函数,所以程序运行时main函数调用别的函数,并且给别的函数传入参数。但是没人告诉我们是谁“调用”的main函数。其实我们可以理解为是操作系统调用的main函数,所以main函数的参数应该是操作系统给的,也就是说我们的在命令行界面运行程序是,需要给main函数参数;

其次,说明一下argc表示的什么意思;可以用代码说明。
(对代码进行解释一下:我们将argc的值输出,因为这个值是main函数的参数,而main函数的参数又是操作系统给的,也就是我们在命令行执行程序时传入的)
#include<stdio.h>
int main(int 爱人给出char **argv)
{
int i;
for(i = 0; i < argc ; i++)
{
printf("argument(%d) is %s !\n",i,argv[i]);
}
printf("=========\n");
printf("argc is %d\n",argc);
printf("=========\n");
}
当我们在运行程序时,传入的参数,就是这个argc的值;从截图中,我们就晓得,argc是传入参数的个数,“传入的参数”加上可执行文件的文件名。


***********************************argv[]的理解*******************************************
*****************************************************************************************
argv[]是什么意思?从上面程序运行的结果中可以看出,argv[]存放的是传给main函数的参数,argv是字符串数组,所以下标从0开始,第一个存放的是可执行程序的文件名字,然后依次存放传入的参数;

******************************************总结*******************************************
*****************************************************************************************
更多推荐
所有评论(0)