execv与execve的区别
Iv'e试图在谷歌上搜索,但没有真正理解execv与execve的区别,c,linux,exec,C,Linux,Exec,Iv'e试图在谷歌上搜索,但没有真正理解execv,execve,execlp之间的区别 如果有人能帮助我,我将不胜感激 谢谢 使用execve()可以使用env参数为新进程映像指定环境。env参数是传递给execve()调用的最后一个参数。execv()调用无法指定env参数。最后,使用execclp,您可以指定一个文件名而不是路径,并且path环境变量用于搜索可执行文件。在这三个函数中,execv是最简单的一个:它的所有参数都在一个向量中,但是您必须给出可执行文件的精确路径 现在,execv
execv
,execve
,execlp
之间的区别
如果有人能帮助我,我将不胜感激
谢谢
使用execve()可以使用env参数为新进程映像指定环境。env参数是传递给execve()调用的最后一个参数。execv()调用无法指定env参数。最后,使用execclp,您可以指定一个文件名而不是路径,并且path环境变量用于搜索可执行文件。在这三个函数中,
execv
是最简单的一个:它的所有参数都在一个向量中,但是您必须给出可执行文件的精确路径
现在,execve
增加了访问系统环境的可能性:这里定义的变量。例如,如果使用execve
定义MY_VAR=42
,则此定义在使用getenv
的代码中可见
最后,
execlp
允许您只给出可执行文件的名称,它将在路径
变量中搜索。如果您不挖掘,您可以给出任何示例