1.先從頭文件說起.
#include <unistd.h>
unix standard header -> unistd.h
standard input output header -> stdio.h
standard library header -> stdlib.h
unistd.h不是c語言的東西,是linux/unix的系統調用,包含了許多unix系統服務的函數原型
2.查看幫助
debian 下 安裝開發包幫助
manpages-dev
man 2 getpid
man 3 printf
3.函數exit,_exit區別
exit()在結束調用它的進程之前,要進行如下步驟:
1.在atexit()注冊的函數;
2.cleanup(),執行I/O緩存的刷新動作;
exit()是標準庫中的.
在一個進程調用了exit()之后,該進程并不馬上就完全消失,而是留下一個稱為僵尸進程(Zombie)的數據結構.
而_exit()直接從進程-> 調用exit系統調用,是屬于<unistd.h>中