fexecve (name, in, out, err, argptr, envptr) char *name; FILE *in, *out, *err; char **argptr, **envptr;
name is a string containing the name of the object file to be executed. If the name contains a slash (/), it is assumed to be a pathname to the file. If there is no slash, fexecve() searches for the file in a list of directories contained in the environment variable PATH, or if there is no such variable, it searches the working directory first, then /bin. The PATH variable (which is taken from the new environment list envptr ) has a value which is a series of directory names separated by colons. The working directory is represented in this list by omitting a name (before the first colon, between two colons, or after the last colon). Thus the default search rules may be expressed as
"PATH=:/bin"
in, out, and err are files which are to be substituted for stdin, stdout, and stderr, respectively, when the new program is executed.
argptr and envptr are pointers to arrays of pointers to strings, with a NULL pointer as the last element of the array. By convention, argptr[0] is the name of the program.