相关函数: abort
头文件 : #include <stdlib.h>
函数原型: void abort(void);
函数说明: 引起进程异常终止,此时所有已打开的文件流会自动关闭,缓冲区里的数据也会自动写回
返回值 : 无
相关函数: assert
头文件 : #include <assert.h>
函数原型: void assert(int expression);
函数说明: 该函数会判断参数expression是否成立。若不成立则会显示错误信息并调用abort来终止进程
返回值 : 无
相关函数: exit
头文件 : #include <stdlib.h>
函数原型: void exit(int status);
函数说明: 用来正常终止目前进程的执行,并把参数status返回给父进程。进程所有的缓冲区数据会自动写回并关闭所有的文件
返回值 : 无
相关函数: _exit
头文件 : #include <unistd.h>
函数原型: void _exit(int status);
函数说明: 用来立刻终止目前进程的执行,并把参数status返回给父进程。但不会处理缓冲区数据和打开的文件
返回值 : 无
相关函数: fork
头文件 : #include <unistd.h>
函数原型: pid_t fork(void);
函数说明: 创建一个新的子进程,子进程会复制父进程的数据和堆栈空间,并继承父进程的用户代码、组代码、环境变量、已打开的文件等。
返回值 : 若成功在父进程返回新创建的子进程的进程号,而在子进程中返回0;如果失败则返回-1
相关函数: getpid
头文件 : #include <unistd.h>
函数原型: pid_t getpid(void);
函数说明: 取得当前进程的进程号
返回值 : 当前进程的进程号
相关函数: getppid
头文件 : #include <unistd.h>
函数原型: pid_t getppid(void);
函数说明: 取得当前进程的父进程的进程号
返回值 : 当前进程父进程的进程号
相关函数: system
头文件 : #include <stdlib.h>
函数原型: int system(const char *string);
函数说明: 该函数会调用fork创建子进程,由子进程来执行参数string代表的命令
返回值 : 调用成功时会返回执行命令后的返回值,否则要检查errno来确定原因
相关函数: wait
头文件 : #include <sys/types.h>
#include <sys/wait.h>
函数原型: pid_t wait(int *status);
函数说明: 暂停当前进程的执行,直到有信号来或子进程结束。如果在调用wait时子进程已经结束,则会立刻返回。子进程的结束状态值由参数status返回
返回值 : 结束的子进程的进程号
相关函数: waitpid
头文件 : #include <sys/types.h>
#include <sys/wait.h>
函数原型: pid_t waitpid(pid_t pid, int *status, int options);
函数说明: 暂停当前进程的执行,直到有信号来或子进程结束。如果在调用waitpid时子进程已经结束,则会立刻返回。子进程的结束状态值由参数status返回
参数pid含义如下:
pid < -1 等待进程组号等于pid绝对值的任何子进程
pid = -1 等待任何子进程,相当于wait
pid = 0 等待进程组号与当前进程相同的任何子进程
pid > 0 等待进程号为pid的子进程
参数options含义如下:
0 阻塞父进程,等待子进程退出
WNOHANG 如果没有子进程退出立刻返回
WUNTRACED 如果子进程进入暂停状态则马上返回
返回值 : 如果执行成功则返回子进程号,如果有错误发生则返回-1,失败原因保存于errno中
相关函数: execl
头文件 : #include <unistd.h>
函数原型: int execl(const char *path, const char *arg, …);
函数说明: execl用来执行参数path字符串所代表的文件,后面的参数代表执行该文件时传递过去的参数argv[0]、argv[1]…,最后一个参数必须是NULL
返回值 : 若执行成功则函数不会返回,执行失败则返回-1,失败原因保存于errno中
相关函数: execle
头文件 : #include <unistd.h>
函数原型: int execle(const char *path, const char *arg, …, char *const envp[]);
函数说明: execle用来执行参数path字符串所代表的文件,后面的参数代表执行该文件时传递过去的参数argv[0]、argv[1]…,最后一个参数必须指向一个新的环境变量数组,此数组会成为新执行进程的环境变量
返回值 : 若执行成功则函数不会返回,执行失败则返回-1,失败原因保存于errno中
相关函数: execlp
头文件 : #include <unistd.h>
函数原型: int execlp(const char *file, const char *arg, …);
函数说明: execlp会从PATH环境变量包含的路径中查找符合参数file的文件名,找到后执行该文件,然后将后面的参数当作argv[0]、argv[1]…,最后一个参数必须是NULL
返回值 : 若执行成功则函数不会返回,执行失败则返回-1,失败原因保存于errno中
相关函数: execv
头文件 : #include <unistd.h>
函数原型: int execv(const char *path, char *const argv[]);
函数说明: execl用来执行参数path字符串所代表的文件,参数argv是一个指针数组,相当于execl中后面的多个参数都用指针数组传递给执行文件
返回值 : 若执行成功则函数不会返回,执行失败则返回-1,失败原因保存于errno中
相关函数: execve
头文件 : #include <unistd.h>
函数原型: int execve(const char *path, char *const argv[], char *const envp[]);
函数说明: execve用来执行参数path字符串所代表的文件,第二个参数利用指针数组来传递给执行文件,最后一个参数传递新的环境变量
返回值 : 若执行成功则函数不会返回,执行失败则返回-1,失败原因保存于errno中
相关函数: execvp
头文件 : #include <unistd.h>
函数原型: int execvp(const char *file, char *const argv[]);
函数说明: execvp从环境变量PATH包含的路径里查找文件file,找到后执行该文件,然后将第二个参数argv传递给要执行的文件
返回值 : 若执行成功则函数不会返回,执行失败则返回-1,失败原因保存于errno中
标签:头文件,函数,返回值,进程,相关,include,const From: https://www.cnblogs.com/cnetsa/p/17003189.html