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.

Data Recovery PRO DATA DOCTOR

Home | Order Online | Downloads | Contact Us | Software Knowledgebase

it | es | pt | fr | de | jp | kr | cn | ru | nl | gr


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.


Sample Chapters from book DATA RECOVERY WITH AND WITHOUT PROGRAMMING by Author Tarun Tyagi
Data Recovery with & without Programming


Publishers of the Book
Number of Pages
ISBN
Price of the Book


BPB Publications, New Delhi, India
540
81-7656-922-4
$69.00 (Including Shipping Charges, Cost of Book and Other expenses, Free Source Code CD included with the Book)





Buy Data recovery Book

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

© Copyright 2002-2005 DataDoctor.Biz

Home | Contact us | Downloads | Services | Resources | Terms and conditions | Site map

Website Data Recovery | recuperación de Datos | Récupération de données | Datenrettung | Recupero dati | データ復旧 | 데이터 복구 | 数据恢复 | Восстановление данных | De terugwinning van gegevens | Ανάκτηση δεδομένων
Sitemap Site map1 2 3 4 | Spanish1 2 3 | French1 2 3 | German1 2 3 | Italian1 2 3 | Portuguese1 2 3 | Japanese1 2 3 | Korean1 2 3 | Chinese1 2 3 | Russian1 2 3 | Dutch1 2 3 | Greek1 2 3
Data Recovery Book English | Spanish | French | German | Italian | Portuguese | Japanese | Korean | Chinese | Russian | Dutch | Greek