#include<unistd.h>
定义函数:
int execvp(const char *file ,char * const argv []);
函数说明:
execvp()会从PATH 环境变量所指的目录中查找符合参数file 的文件名,找到后便执行该文件,然后将第二个参数argv传给该欲执行的文件。
返回值:
如果执行成功则函数不会返回,执行失败则直接返回-1,失败原因存于errno中
#include<unistd.h>
void main()
{
char * argv[ ] ={"ls","-al",0};
printf("Hello/n");
execvp("ls",argv);
printf("bye/n");
}
猜猜运行结果,呵呵,注意进程被改变。
////////////////////////////////////////////////
#include <unistd.h>
函数定义:
int fork( void );
返回值:
子进程中返回0,父进程中返回子进程ID,出错返回-1
#include <unistd.h>
#include <stdio.h>
int main(int argc, void ** argv )
{
int pid = fork();
if(pid == -1 ) {
printf("error!");
} else if( pid == 0 ) {
printf("This is the child process!, myid is %d/n", getpid());
} else {
printf("This is the parent process! child process id = %d", pid);
}
return 0;
}
#include <sys/types.h>
#include <sys/wait.h>
等待进程结束
函数定义:
pid_t wait( int *statsptr);
参数
子进程的返回结果
返回值:
被结束的进程的id
调用程序能将一个字符串类别 传给 新程序得main函数;新程序能通过调用exit来回传一个8位长得值