欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

exec函数族

程序员文章站 2022-07-15 09:26:20
...

一、exec函数
一般在通过fork()系统调用创建的子进程中调用,这样只是替换了子进程而父进程并不受到影响。可以装入和运行其他程序

注意:exec函数只改变程序而不改变进程本身

二、exec函数族
exec只是一个函数族,Linux中并没有以exec为函数名的函数,它有6个以exec开头的函数,由下面列举出:

头文件:#include”unistd.h”

int execl(char *pathname, char *argv1, char *argv2, ... ,char *argvn,(char *)0);
/*
  execl("./main","./main",(char *)0);//第二 个./main是传入给main函数的参数(如下)
  int main(int argc, char *argv[]); argc >= 1, argv[0] = "./main"
*/
/*
  int res = func();//调用func函数并且接受func的返回值
  int res = execl();//调用成功则不返回(因为成功后源程序已经被覆盖,源程序不存在所以不能接受)若exec调用失败则返回-1给res
*/

-int execv();// execv(char *pathname,const char *argv[]);

-int execleconst();  // execle(char *pathname,char *argv[],(char *)0,char *envp[]);

-int execve();// PATH

-int execlp(); //execlp(const char *file,const char *arg...)

-int execvp(); //execvp(const char *file,char *cosnt argv[])

上一篇: EXEC函数族

下一篇: exec函数族