2010-03-23 4 views
5

Même si j'ai utilisé les instructions break() et exit() plusieurs fois, je suis un peu confus entre elles. J'ai besoin de connaître la signification exacte des deux, quand nous devrions les utiliser. S'il vous plaît expliquer avec un petit exemple. Merci.Quelles sont les différences entre la rupture et la sortie?

+0

est ce travail à domicile? – Naveen

+9

break() n'est pas une fonction, elle fait partie de la syntaxe du langage. exit() est une fonction. De quel livre apprenez-vous qui ne couvre pas cela? –

Répondre

20

break est un mot clé qui sort le courant construisent comme des boucles. exit est une fonction non-returning qui renvoie le contrôle au système d'exploitation. Par exemple:

// some code (1) 
while(true) 
{ 
    ... 
    if(something) 
    break; 
} 
// some code (2) 

Dans le code ci-dessus, break quitte la boucle actuelle qui est la boucle while. c'est-à-dire que du code (2) doit être exécuté après rupture de la boucle.

Pour sortir, il obtient juste de sortir du programme totalement:

// some code (1) 
while(true) 
{ 
    ... 
    if(something) 
    exit(0); 
} 
// some code (2) 

Vous sortir du programme. c'est-à-dire qu'un certain code (2) n'est pas atteint dans le cas de exit().

2

pause est utilisée pour quitter la boucle.

La sortie est utilisée pour quitter le programme.

#include<stdio.h> 
#include<stdlib.h> 
main() 
{ 
     int d; 
     while(1) 
     { 
     scanf("%d",&d); 
     if(d==1) 
     { 
       break; 
     } 
     else if(d==4) 
     { 
       exit(0); 
     } 
     } 
     printf("WELCOME YOU MATCH BREAK\n"); 
} 

Si vous appuyez sur le 1, il sortira du la boucle. Pas du programme. Donc, cette fois, il va imprimer la chaîne.

Si vous appuyez sur 4, il quittera le programme , il n'imprimera pas la chaîne.

8

break est une instruction de flux de contrôle du langage. Il dit que la déclaration suivante à exécuter est celui à la fin de la boucle (ou à la fin de la déclaration switch) au lieu

while (...) { /* same for "do {} while" or "for" */ 
    ... 
    break; -----+  
    ...   | 
}    | 
....  <---+ JUMP HERE! 



switch (...) { 
    ... 
    break; -----+  
    ...   | 
}    | 
....  <---+ JUMP HERE! 

exit(), est une fonction qui dit que le programme doit se terminer et le contrôle doit être restitué au système d'exploitation. Selon le système d'exploitation, à la sortie, il se passe beaucoup de choses en coulisse pour nettoyer et libérer les ressources utilisées. Vous pouvez également utiliser la fonction atexit() (en C99) pour définir une fonction à appeler avant de quitter.

+0

+1 de jolies photos –

Questions connexes