Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: samur88 en 12 Mayo 2011, 17:48 pm



Título: Sustitución de Break por otra cosa.
Publicado por: samur88 en 12 Mayo 2011, 17:48 pm
Hola buenas.

Tengo una duda, según tengo entendido el uso del break en C esta obsoleto, pero sin embargo tengo un while donde lo tengo que usar por fuerza, quiero saber si el problema es mio, es decir que estoy haciendo algo mal y ese break se puede sustituir por otra cosa, o es que en realidad hay casos donde el uso del break es esencial.

La estructura que uso ahora es esta:
Código
  1. while(1) {
  2. if(feof(fp)){break;}
  3. ...
  4. }

Ya que si uso esto:
Código
  1. while(!feof(fp)){
  2. ....
  3. }
me lee una vez de mas el archivo, es decir es como si se ejecutara el bucle una vez mas a lo que quiero..

Un saludo.


Título: Re: Sustitución de Break por otra cosa.
Publicado por: Queta en 12 Mayo 2011, 18:33 pm
¿Dónde leíste que está obsoleto?

http://www.cplusplus.com/doc/tutorial/control/ (http://www.cplusplus.com/doc/tutorial/control/)
http://msdn.microsoft.com/en-us/library/wt88dxx6 (http://msdn.microsoft.com/en-us/library/wt88dxx6)
http://en.wikipedia.org/wiki/C_syntax (http://en.wikipedia.org/wiki/C_syntax)



Título: Re: Sustitución de Break por otra cosa.
Publicado por: samur88 en 12 Mayo 2011, 18:39 pm
Gracias :D Ya veo que no lo esta, pues no lo recuerdo, creo que lo leí en un  blog que el go to y el break estaban obsoletos.

Un saludo.


Título: Re: Sustitución de Break por otra cosa.
Publicado por: Queta en 12 Mayo 2011, 18:45 pm
De nada. En cuanto al goto no es que esté obsoleto, es totalmente innecesario, es más, se considera una mala costumbre (http://en.wikipedia.org/wiki/Structured_programming (http://en.wikipedia.org/wiki/Structured_programming)).


Título: Re: Sustitución de Break por otra cosa.
Publicado por: samur88 en 12 Mayo 2011, 19:11 pm
Muchas gracias, eso si lo leí que traía de cabezas a los programados antes de la programación estructurada.

Un saludo.


Título: Re: Sustitución de Break por otra cosa.
Publicado por: ShotgunLogic en 12 Mayo 2011, 22:49 pm
Creo que el break no esta mal usarlo cuando tienes mas remedio, pero en general a los programadores no les suele gustar mucho abusar de break.

Otra forma que yo uso a veces en java es salir del bucle con un return ; en el caso de que el tipo de retorno sea void, o si ya sabes lo que hay que devolver devolviendolo, ya que normalmente en cada funcion(metodo) haces una cosa para tenerlo todo bien estructurado.

Saludos!


Título: Re: Sustitución de Break por otra cosa.
Publicado por: samur88 en 12 Mayo 2011, 23:25 pm
Muchas gracias por la respuesta :D
Al final he hecho lo que dices, ya que era con la función fread y retornando el valor es mas seguro que lo que quería hacer.