The initial argument for these functions is the name of a file that is
to be executed.
.PP
-The functions can be grouped based on the letters following exec.
+The functions can be grouped based on the letters following the "exec" prefix.
+.\"
.SS l - execl(), execlp(), execle()
.PP
The
be terminated by a null pointer,
and, since these are variadic functions, this pointer must be cast
.IR "(char\ *) NULL" .
+.PP
+By contrast with the 'l' functions, the 'v' functions (below) specify the
+command-line arguments of the executed program as a vector.
+.\"
.SS v - execv(), execvp(), execvpe()
.PP
The
be terminated by a null pointer.
All other
.BR exec ()
-functions take the environment for the new process
+functions (which do not include 'e' in the suffix)
+take the environment for the new process
image from the external variable
.I environ
in the calling process.
.RI ( /bin/sh )
with the path of the file as its first argument.
(If this attempt fails, no further searching is done.)
+.PP
+All other
+.BR exec ()
+functions (which do not include 'p' in the suffix)
+take as their first argument a (relative or absolute) pathname
+that identifies the program to be executed.
.SH RETURN VALUE
The
.BR exec ()