main函数
进程总是从main函数开始执行的,我们编程时,程序运行也是从main函数运行的,它的原型如下:
int main(int argc, char *[]argv);
argc是命令行参数的数目,argv是指镇数组,即指向指针的指针,可以写代码测试一下:
#include<stdio.h>
int main(int argc, char *argv[])
{
int i;
for(i=0; i<argc; i++)
printf("argv[%d]:%s\n",i,argv[i]);
exit(0);
}
输出:
linux:/home # ./test this is a test program
argv[0]:./test
argv[1]:this
argv[2]:is
argv[3]:a
argv[4]:test
argv[5]:program
在调用main函数之前,内核先调用一个特殊的启动例程,它从内核取得命令行参数和环境变量的值,可执行程序文件将此启动例程指定为程序的起始地址。内核使用exec函数来启动C程序。