Aquí, veremos cómo mostrar errores de código inalcanzables usando el programa C. Las declaraciones inalcanzables son declaraciones que no se ejecutarán durante la ejecución del programa. Estas declaraciones pueden ser inaccesibles debido a las siguientes razones:
- Declaración de devolución antes de declaración de impresión.
- Bucle infinito antes de las declaraciones.
- Declaraciones después de las declaraciones de continuar.
- Condiciones falsas en sentencias if.
Comencemos discutiendo cada uno de estos escenarios en detalle.
1. Estado de cuenta devuelto antes del estado de cuenta impreso
Cuando se ejecuta una instrucción de retorno, detendrá la ejecución del programa, por lo que la segunda instrucción printf no se ejecutará debido a un error de código inalcanzable. En el siguiente ejemplo, se puede observar que la primera declaración printf imprimirá la salida, pero después de eso, está la declaración de retorno.
A continuación se muestra el programa C para demostrar un error de código inalcanzable cuando una declaración de devolución está presente antes de la declaración de impresión:
C
// C program to demonstrate // unreachable code error #include <stdio.h> // Driver code int main() { printf("geeks for geeks"); return 0; printf("gfg"); }
Producción:
geeks for geeks prog.c: error: unreachable statement printf("gfg")
2. Bucle infinito antes de las declaraciones: en el siguiente programa en C, aunque el valor de a es igual a 2, no imprimirá la salida debido a la declaración de interrupción. La instrucción break detendrá la ejecución y saldrá del bucle.
C
// C program to implement // the above approach #include <stdio.h> // Driver code int main() { int a = 2; for (;;) { if (a == 2) { break; // It will never execute, so // same error will be there. printf("GeeksforGeeks"); } } return 0; }
Producción:
prog.c: error: unreachable statement printf("GeeksforGeeks");
3. Declaraciones después de las declaraciones de continuación: El siguiente código muestra el ejemplo de la declaración de continuación. En el código, hay una declaración de continuación, la declaración de continuación transfiere el control al comienzo del bucle. Por lo tanto, no ejecutará las declaraciones debajo de la declaración de continuación.
C
// C program to implement // the above approach #include <stdio.h> // Driver code int main() { for (int i = 0; i < 5; i++) { continue; printf("GeeksforGeeks"); } return 0; }
Producción:
prog.c: error: unreachable statement printf("GeeksforGeeks");
4. Condiciones falsas en declaraciones if:
Ejemplo 1: El valor de sqrt(2) será 1,414. si la declaración verifica la condición, el valor de X no es mayor que 5, por lo que no se ingresará dentro de la declaración if y no ejecutará la declaración X++.
C
// C program to show the // unreachable error #include <math.h> #include <stdio.h> // Driver code int main() { // The value of sqrt(2) is 1.414 double X = sqrt(2); // 1.414>5 condition false so it // will not be entered inside the // if statement if (X > 5) { /* unreachable code */ X++; } return 0; }
Producción:
prog.c: error: unreachable statement X++;
Ejemplo 2: en el siguiente código, la instrucción printf nunca se ejecutará porque el valor de N será 3 y nunca será igual a 4. Por lo tanto, la instrucción if no se ingresará en el bloque interno de if.
C
// C program to show the // unreachable error #include <stdio.h> // Driver code int main() { // The value of N is 3 int N = 2 + 1; // 3==4 false so it will not be // entered inside the if statement if (N == 4) { /* unreachable code */ printf("equal"); } return 0; }
Producción:
prog.c: error: unreachable statement printf("equal");
Publicación traducida automáticamente
Artículo escrito por laxmigangarajula03 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA