Article View: es.comp.os.linux.programacion
Article #6816Re: Romper 2 bucles a la vez en C
From: Piojo
Date: Tue, 06 May 2003 20:53
Date: Tue, 06 May 2003 20:53
49 lines
2969 bytes
2969 bytes
> Revisen los libros, el goto es necesario en los c�digos de maquinas,
> ya que en la emplementaci�n de los if then else, en c�digo intermedio
> de los compiladores se representa con puros goto, pero eso es algo de
> compiladores y es una mala idea usarlo en C ya que el goto es algo
> orientado a Basic, y esta orientado a ense�anza no a desarrollo, creo
> que
> se debe mira el goto en C, o google "goto kernighan" o esta direcci�n
>
http://www.google.cl/search?q=cache:IcH5zyeQYE4C:www.lysator.liu.se/c/bwk-tutor.html+goto++kernighan+ritchie&hl=es&ie=UTF-8
>
> secci�n 27, :D espero que con esto se les olvide o los persuada de no
> ocupar gotos.... el titulo es "Horrors! goto's and labels" Bueno el
> titulo
> dice todo ^.-.^ <3(o-o)E>
>
S�. Pero cito de esa misma secci�n:
-------------------------------------------------------
Another use is to implement a break out of more than one level of for
or while.
-------------------------------------------------------
Y eso es JUSTO de lo que trata este hilo. ;)
Adem�s, una estructura de c�digo tipo
if (hago_algo) {
if (hago_algo_mas) {
if (hago_mas_aun)
...
else
muchas_correcciones;
}
else
correcciones;
}
else
a_tomar_por_culo;
Para unos pocos niveles de indentaci�n es aceptable. Pero para muchos se
va demasiado a la derecha, convirti�ndose en algo totalmente ilegible.
Por no hablar de ineficiente. En ese caso, es aceptable aplanar esa
estructura con gotos.
Naturalmente, todo esto es absolutamente anecd�tico.
Moraleja: aunque los gotos tengan muy pocos usos leg�timos, es
conveniente aprender a distinguirlos. ;)
Saludos.
Technical Details
Message-ID:
<b99e2j$5n4$1@news.ya.com>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.cs.ubc.ca!fu-berlin.de!nsnmpen1-lo.nuria.telefonica-data.net!news.ya.com!yacom!not-for-mailReferences:
<b8n8kd$bm3re$1@ID-146085.news.dfncis.de> <slrnbaur1q.ih.444398NOSPAM@tizona.dummy.net> <20030430205521.487.2.NOFFLE@BlackSpark.local> <403d26cd.0305011347.576e901e@posting.google.com> <3EB28D35.2D8125E6@terra.es> <3EB2A671.F527D86C@yale.cl>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,d2bd500edfc3d6fa X-Google-Attributes: gidf86c8,public X-Google-ArrivalTime: 2003-05-06 15:48:03 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!nntp.cs.ubc.ca!fu-berlin.de!nsnmpen1-lo.nuria.telefonica-data.net!news.ya.com!yacom!not-for-mail From: Piojo <mailingpiojo@ya.com> Newsgroups: es.comp.os.linux.programacion Subject: Re: Romper 2 bucles a la vez en C Date: Tue, 06 May 2003 22:53:02 +0200 Organization: ya.com internet factory Lines: 49 Message-ID: <b99e2j$5n4$1@news.ya.com> References: <b8n8kd$bm3re$1@ID-146085.news.dfncis.de> <slrnbaur1q.ih.444398NOSPAM@tizona.dummy.net> <20030430205521.487.2.NOFFLE@BlackSpark.local> <403d26cd.0305011347.576e901e@posting.google.com> <3EB28D35.2D8125E6@terra.es> <3EB2A671.F527D86C@yale.cl> NNTP-Posting-Host: 80-25-211-52.adsl.ya.com Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8Bit X-Trace: news.ya.com 1052261267 5860 80.25.211.52 (6 May 2003 22:47:47 GMT) X-Complaints-To: newsmaster@ya.com NNTP-Posting-Date: Tue, 6 May 2003 22:47:47 +0000 (UTC) User-Agent: KNode/0.7.2