execve в системах Unix - PullRequest
       1

execve в системах Unix

1 голос
/ 10 ноября 2010
#include<unistd.h>

int main(int argc, char **argv)
{
 int ret;

 ret = execve("/bin/bash", NULL, NULL);

 return 0;

}

Я не понимаю, почему нулевые значения передаются в execve. пожалуйста помогите .....

Ответы [ 2 ]

6 голосов
/ 10 ноября 2010

Эти параметры соответствуют аргументам программы и среде. Передавая NULL для обоих, вызывающая сторона указывает, что никакие аргументы не должны быть предоставлены программе, и никакие переменные среды также не должны быть предоставлены.

1 голос
/ 10 ноября 2010

этот код открывает новую оболочку ..... например, при выполнении любой команды оболочка копирует себя и выполняет команду.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...