INTRODUZIONE ALLA PROGRAMMAZIONE IN C



execl()



"execl" ha altre 5 funzioni correlate (vedere le pagine "man"). "execl" sta' per "execute and leave", che significa che un processo sara' eseguito e poi terminato dalla stessa execl. Viene definita con: execl(char *path, char *arg0, ..., char *argn, 0); L'ultimo parametro deve sempre essere 0. E' un termine NULL. Poiche' la lista degli argomenti e' variabile, e' necessario avere un modo per dire al C dove termina; il termine nullo serve a questo. "path" punta al nome di un file contenente un comando che deve essere eseguito, "argo" punta ad una stringa che e' la stessa di "path" (o almeno il suo ultimo componente). "arg1, ..., argn" sono puntatori agli argomenti per il comando, e 0 segna semplicemente la fine dell'elenco (di lunghezza variabile) degli argomenti. Cosi' l'esempio in precedenza riportato risultera' ora: main() {printf("Files in Directory are: \n"); execl("/bin/ls","ls","-l",0); }