7.2main函数
C程序总是从main函数开始执行的。main函数的原型是
int main(int argc, char* argv[])
其中,argc是命令行参数的数目,argv是指向参数的各个指针所构成的数组。
7.3进程终止
有8种方式可以使进程终止,其中5个是正常终止:
- 从main函数返回;
- 调用exit;
- 调用_exit或_Exit;
- 左后一个线程从启动例程返回;
- 最后一个线程调用pthread_exit;
异常终止有三种:
- 调用abort函数;
- 接到一个信号;
- 最后一个线程对取消请求做出响应。
_exit和_Exit直接进入内核,exit先执行一些清理工作,对打开的流进行fclose操作,然后在返回内核。
main函数返回一个整型值与调用exit()是等价的。exit(0)等价于return 0;
7.4命令行参数
当执行一个参数时,调用exec的进程可以将命令行参数传递给新程序。
7.5环境表
每个程序都会收到一张环境表,与参数表一样,环境表也是字符指针数组,其中每个指针包含一个以null结束的C字符串的地址。