2010-03-23 26 views
5

Incluso utilicé declaraciones break() y exit() muchas veces, estoy un poco confundido entre ellas. Necesito saber el significado exacto de ambos, cuándo deberíamos usarlos. Por favor explique con un pequeño ejemplo. Gracias.¿Cuáles son las diferencias entre romper y salir?

+0

es ese trabajo de casa? – Naveen

+9

break() no es una función, es parte de la sintaxis del lenguaje. exit() es una función. ¿De qué libro estás aprendiendo que no cubre esto? –

Respuesta

20

break es una palabra clave que salidas la corriente construyen como bucles. exit es una función non-returning que devuelve el control al sistema operativo. Por ejemplo:

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

En el código anterior, break sale del bucle de corriente que es el bucle while. es decir, se ejecutará algún código (2) después de romper el ciclo.

para la salida, que sólo se pone fuera del programa completo:

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

Se podría salir del programa. es decir, algún código (2) no se alcanza en el caso de exit().

2

break se usa para salir del lazo.

salida se utiliza para salir del programa.

#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 pulsa el 1, que saldrá del el bucle. No del programa. Así que esa vez imprimirá la cadena.

Si pulsa 4, saldrá del programa , No va a imprimir la cadena.

8

break es una declaración de flujo de control del lenguaje. Se dice que la siguiente instrucción a ser ejecutada es la que al final del bucle (o al final de la declaración switch)

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



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

exit(), en cambio, es una función que dice que el programa debe terminar y control debe devolverse al sistema operativo. Dependiendo del sistema operativo, al salir, hay muchas cosas que ocurren detrás de las escenas para limpiar y liberar los recursos utilizados. También puede usar la función atexit() (en C99) para definir una función a llamar antes de salir.

+0

+1 fro pretty Fotografías –

Cuestiones relacionadas