【Linux:进程程序替换】

时间:2025-04-03 17:12:13
  • int execle(const char*path, const char *arg, ..., char *const envp[]);

envp[]:表示程序员需要自己组织环境变量

函数名中带e和不带e的区别
带e表示程序员自己组织环境变量
不带e表示程序员不需要自己组织环境变量
函数名称中带有l表示函数的参数为可变参数列表,否则不是
  • int execv(const char *path,char *const argv[]);
  • int execvp(const char *file,char *const argv[]);

file:待要替换的可执行程序,可以不用给路径

argv[]:指针数组,保存的是可执行程序传递的参数

注意:1.数组的第一个元素必须是可执行程序本身

           2.数组的最后一个元素应该为NULL

  • int execve(const char*filename,char *const argv[],char *const envp[]);

filename:带有路径的可执行程序

argv:可执行程序传递的参数   第一个参数应该是其本身,最后一个参数应该是NULL

envp[]:程序员自己组织环境变量,最后一个参上一定是NULL