main函数可以是没有参数,也可以是两个参数(有些允许更多的参数,但那些只是对标准的扩展 )
main函数两个参数的情况:
main(int argc, char * argv[])
第一个参数表示的是命令行参数的数目。
第二个参数是一个指向字符串的指针数组(是命令行的参数),argv[0]一般表示的是程序名,第二个参数才开始表示命令行参数。
如,在命令行输入c i love you,argc=4, argv[0]=程序名, argv[1]=i , argv[2]=love , argv[3]=you 。
一个程序总是从main函数开始执行,但是并不是所有动作都由main函数引起的,静态变量、全局变量、全局对象的分配早就在main函数之前就已经由编译器完成了。在main函数执行之后,还要进行销毁全局变量。执行全局对象的析构函数等。