Pages: [1]   Go Down
Print
Author Topic: Istruzione exit in C  (Read 2009 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
SixArt
Matricola
*
Offline Offline

Gender: Male
Posts: 51



« on: 30-05-2011, 14:00:01 »

Qualcuno mi saprebbe dire la differenza tra
exit(0)
exit(1) e così via???
li vedo spesso nei codici C durante le lezione di laboratorio ma non capisco la differenza.
Grazie
Logged
XDnl
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 376



« Reply #1 on: 30-05-2011, 14:43:58 »

La exit(), indipendentemente dal parametro passato, provoca la terminazione immediata del programma.
Il parametro rappresenta l'exit status del processo (http://www.dmi.unict.it/diraimondo/uploads/classes/so/1011/SO-lab-unix-shell-video.pdf, slide 51)...  prova questo esempio
Code:
#include <stdio.h>
#include <stdlib.h> // per la exit()

int main(int argc, char *argv[])
{
int codice;
fprintf(stdout, "Inserire codice per l'exit():");
fscanf(stdin, "%d", &codice);

// Termina immediatamente l'esecuzione del programma
exit(codice);

fprintf(stdout, "Codice che non verrà eseguito");

// Il valore ritornato dal main() corrisponde all'exit status, solo che qui non viene usato
return 0;
}

dopo averlo compilato puoi fare qualche prova (da shell)
Code:
./prova && echo Ok || echo Errore

oppure
Code:
./prova

ed una volta tornato alla shell
Code:
$?
Il comando $? ritorna l'exit status dell'ultimo job eseguito in foreground.
 
Logged
havoc
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 224


« Reply #2 on: 30-05-2011, 14:55:42 »

http://lmgtfy.com/?q=C+exit
Logged

Pages: [1]   Go Up
Print
Jump to: