参数分析
在学习C语言函数时我们不难发现几乎所有被调用的函数都具有自己的参数列表,那么作为程序入口的main函数又是否具有参数呢?
Main函数虽然是整个C程序的入口但却不是整个函数调用中的第一个,当程序执行时main函数被main函数被 __tmainCRTStartup调用, __tmainCRTStartup则又被 mainCRTStartup函数调用。在日常的编码过程中我们虽没有在main函数的参数列表内加入任何值,但其确实具有参数。main函数原型如下所示:
int main(int argc,char* argv[],char* envp[])
{
return 0;
}
通过观察原型可以发现main函数具有以下三个参数:
- int argc; // 一个整形的变量;
- char* argv[ ] //一个存放指针的数组;
char* envp[ ] //一个存放指针的数组;
( [ ]的优先级大于 * 的优先级,故变量先是一个数组,其中的内容为char * )了解到参数的类型接下来我们可以将参数的内容先打印出来再对其内容进行讨论:
#include<stdio.h>
int main(int argc,char* argv[],ch