Test Foro de elhacker.net SMF 2.1

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:
while(1) {
if(feof(fp)){break;}
...
}


Ya que si uso esto:
while(!feof(fp)){
....
}

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.