C tiene una declaración goto que permita que los saltos no estructurados sean hechos. Para utilizar una declaración goto, utilizas simplemente el goto reservado de la palabra seguido por el nombre simbólico a el cual deseas saltar. Puedes saltar casi dondequiera dentro de una función, pero te no permiten para saltar en un lazo

Files Recovery Software
Inicio Datos de contacto Servicio de atención al cliente Descarga Demo Productos  

 
 

La declaración goto

C tiene una declaración goto que permita que los saltos no estructurados sean hechos. Para utilizar una declaración goto, utilizas simplemente el goto reservado de la palabra seguido por el nombre simbólico a el cual deseas saltar. El nombre entonces se pone dondequiera en el programa seguido por dos puntos. Puedes saltar casi dondequiera dentro de una función, pero te no permiten para saltar en un lazo, aunque a te se permite saltar de un lazo.

Este programa particular es realmente un lío pero es un buen ejemplo de porqué los escritores del software están intentando eliminar el uso de la declaración goto tanto cuanto sea posible. El único lugar en este programa donde está razonable utilizar el goto está, donde el programa salta de los tres lazos jerarquizados en un salto. En este caso sería algo sucio instalar una variable y saltar sucesivamente de cada uno de los tres lazos jerarquizados pero una declaración goto te consigue de los tres de una manera muy sucinta.

Algunas personas dicen que la declaración goto se debe nunca utilizar bajo cualquier circunstancia, pero éste es pensamiento importado estrecho. Si hay un lugar en donde una voluntad goto hace claramente un flujo más aseado del control que una cierta otra construcción, sensación libre utilizarla, sin embargo, como está en el resto del programa sobre tu monitor. Veamos el ejemplo:

#include <stdio.h>

int main()
{
int dog, cat, pig;

goto real_start;

some_where:

printf("This is another line of the mess.\n");

goto stop_it;

/* the following section is the only section with a useable goto */
real_start:

for(dog = 1 ; dog < 6 ; dog = dog + 1)
{

for(cat = 1 ; cat < 6 ; cat = cat + 1)
{

for(pig = 1 ; pig < 4 ; pig = pig + 1)
{
printf("Dog = %d Cat = %d Pig = %d\n", dog, cat, pig);

if ((dog + cat + pig) > 8 ) goto enough;
}
}
}

enough: printf("Those are enough animals for now.\n");
/* this is the end of the section with a useable goto statement */

printf("\nThis is the first line of the code.\n");
goto there;

where:
printf("This is the third line of the code.\n");
goto some_where;

there:
printf("This is the second line of the code.\n");
goto where;

stop_it:
printf("This is the last line of this mess.\n");
return 0;
}

Veamos los resultados exhibidos

Dog = 1 Cat = 1 Pig = 1
Dog = 1 Cat = 1 Pig = 2
Dog = 1 Cat = 1 Pig = 3
Dog = 1 Cat = 2 Pig = 1
Dog = 1 Cat = 2 Pig = 2
Dog = 1 Cat = 2 Pig = 3
Dog = 1 Cat = 3 Pig = 1
Dog = 1 Cat = 3 Pig = 2
Dog = 1 Cat = 3 Pig = 3
Dog = 1 Cat = 4 Pig = 1
Dog = 1 Cat = 4 Pig = 2
Dog = 1 Cat = 4 Pig = 3
Dog = 1 Cat = 5 Pig = 1
Dog = 1 Cat = 5 Pig = 2
Dog = 1 Cat = 5 Pig = 3

Those are enough animals for now.

This is the first line of the code.
This is the second line of the code.
This is the third line of the code.
This is another line of the mess.
This is the last line of this mess.


Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20

 
 

page 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37

 
 

page 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54

 
 

page 55 | 56 | 57 | 58 | 59 | 60

Next page
 
 
Recuperación de Datos de libro
 
Capítulo 1 Una descripción de la recuperación de los datos
Capítulo 2 Introducción de discos duros
Capítulo 3 Acercamiento lógico a los discos y al OS
Capítulo 4 Sistemas de numeración
Capítulo 5 Introducción de la programación de C
Capítulo 6 Introducción a los fundamentos de la computadora
Capítulo 7 Comandos necesarios del DOS
Capítulo 8 Funciones e interrupciones del Disco-BIOS que dirigen con C
Capítulo 9 Manipulación de los discos duros grandes
Capítulo 10 Recuperación de los datos del disco blando corrompido
Capítulo 11 Fabricación de reservas
Capítulo 12 MBR de lectura y de modificación con la programación
Capítulo 13 DBR de lectura y de modificación con la programación
Capítulo 14 Programación para la recuperación del “archivo crudo”
Chapter 15 Programación para los limpiadores de los datos
Capítulo 16 Desarrollar más utilidades para los discos
Apéndice Glosario de los términos de la recuperación de los datos
 
 
Pro Data Doctor

Inicio

Productos

Datos de contacto

Servicio de atención al cliente

Descarga Demo

Términos y Condiciones

 
Pro Data Doctor