Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
execv与execve的区别_C_Linux_Exec - Fatal编程技术网

execv与execve的区别

execv与execve的区别,c,linux,exec,C,Linux,Exec,Iv'e试图在谷歌上搜索,但没有真正理解execv,execve,execlp之间的区别 如果有人能帮助我,我将不胜感激 谢谢 使用execve()可以使用env参数为新进程映像指定环境。env参数是传递给execve()调用的最后一个参数。execv()调用无法指定env参数。最后,使用execclp,您可以指定一个文件名而不是路径,并且path环境变量用于搜索可执行文件。在这三个函数中,execv是最简单的一个:它的所有参数都在一个向量中,但是您必须给出可执行文件的精确路径 现在,execv

Iv'e试图在谷歌上搜索,但没有真正理解
execv
execve
execlp
之间的区别

如果有人能帮助我,我将不胜感激

谢谢


使用execve()可以使用env参数为新进程映像指定环境。env参数是传递给execve()调用的最后一个参数。execv()调用无法指定env参数。最后,使用execclp,您可以指定一个文件名而不是路径,并且path环境变量用于搜索可执行文件。

在这三个函数中,
execv
是最简单的一个:它的所有参数都在一个向量中,但是您必须给出可执行文件的精确路径

现在,
execve
增加了访问系统环境的可能性:这里定义的变量。例如,如果使用
execve
定义
MY_VAR=42
,则此定义在使用
getenv
的代码中可见


最后,
execlp
允许您只给出可执行文件的名称,它将在
路径
变量中搜索。

如果您不挖掘,您可以给出任何示例