zoukankan      html  css  js  c++  java
  • exec函数族解析

    1.首先解释一下,exec函数的作用:它是为了在一个程序中运行另一个程序。

    例如:在一个程序中,执行fork(),可以产生两个进程,我们可以通过exec函数族来实现对父子进程的执行程序进行改变。

    2.exec函数族

    #include <unistd.h>
    extern char **environ;
    int execl(const char *path,const char *arg, ...);    //带有可变参数的需在参数列表之后添加NULL。
    int execlp(const char *file, const char *arg, ...); 
    int execle(const char *path,const char *arg,..., char * const envp[]);
    int execv(const char *path,char *const argv[]);
    int execvp(const char *file, char *const argv[]);
    int execve(const char *file,char *const argv[],char *const envp[]);

    3.exec函数族中后缀l、p、e、v分别表示的含义

    后缀 含义
    l(list) 命令行参数
    p(path) 搜索file时用path变量
    v(vector) 使用命令参数数组
    e(environment) 使用环境变量数组,不使用进程原有的环境变量,设置新加载程序运行的环境变量

     

     

     

     

    eg:  execlp("ls”, ”ls”, ”-l”, ”-a”, NULL);

    execl("/bin/ls”, ”ls”, ”-l”, ”-a”, NULL); 

    区别:需要添加路径。

    4.函数返回值

    函数执行成功,不进行返回值;执行错误,返回-1.

  • 相关阅读:
    两种&
    安装版Windows是必须的
    检验CSS3.0兼容性的有趣东东
    Quadro和Geforce系列的区别
    ECMAScript
    多拉A梦的CSS(6) :not
    多拉A梦的CSS(1) Transform
    表单
    关于a元素的伪类
    多拉A梦的CSS(4) gradient
  • 原文地址:https://www.cnblogs.com/single-dont/p/12607730.html
Copyright © 2011-2022 走看看