| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Francisco Cdt

Registrado: 02 Feb 2004Mensajes: 5
|
Publicado: Lun 02 Feb, 2004 9:57 am Asunto: Ayudadme a este novato con las excepciones en Builder |
|
|
Tengo un pequeño problema. Estoy haciendo un pequeño programa para
las clases de programacion. Utilizo el builder 5.0. Tengo que evitar mediante excepciones que cuando me divida el programa un numero entre 0 no se me quede pillado.
Intentad ayudarme. Muchas gracias. |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Lun 02 Feb, 2004 4:40 pm Asunto: |
|
|
Prueba con esto
| Código: |
float a,b,c;
try{
a = b /c
}catch{...}
|
luego corre tu programa, sin estar dentro de builder, ya que aun que este dentro del Ambiente, te saldra el error, y luego el catch... e intenta se
puede divir
saludos... _________________
 |
|
| Volver arriba |
|
 |
Raúl Capt


Registrado: 16 Ago 2002Mensajes: 174Ubicación: Oruro (Bolivia)
|
Publicado: Mar 03 Feb, 2004 12:29 am Asunto: Acerca de Excepciones |
|
|
En prime lugar te doy un consejo para que crees aplicaciones que mas que todo sean aplicaciones que boten mensajes que nosotros le damos y no asi otros como por ejemplo tu puedes tener una aplicacion que sea en español y de repente ocurre un error y te sale una ventana que por ejemplo puede decir "' ' is not floating value valid", en fin o algo parecido perdon si esta mal es que no domino bien el lenguaje Yankee
A lo que me refiero es que tu ya lo debiste haber visto que cuando ocurre un erro te sale una ventana que te muestra las direcciones de memoria y otras cosas pero lo que mas te debe interesar es observar el mensaje que te sale y la mayoria de las veces esta va con la palabra EconvertError, EZeroDivide, etc. estas son las palabras que te deben interesar ya que estas son las que indican el tipo de error que ha sucedido y muchas veces te serviran muchisimo ya lo verás.
En un libro de C++ Builder decia algo mas o menos como lo siguiente:
"Hay dos tipos de errores los errores para los usuarios y los errores para los programadores los errores para los usuarios son los que aparecen despues de hacer correr nuevamente la aplicacion de haber salido el error mientras que los errores para el programador son los mensajes que salen como te decia los que contienen la direccion de memoria y algun mensaje y es este el que nosotros debemos aprovechar..." |
|
| Volver arriba |
|
 |
Raúl Capt


Registrado: 16 Ago 2002Mensajes: 174Ubicación: Oruro (Bolivia)
|
Publicado: Mar 03 Feb, 2004 12:50 am Asunto: Acerca de Excepciones |
|
|
Uuuuyyy..!!!
Se me olvidaba lo que te respondio Cesar esta muy bien pero creo que un poco de explicacion no caeria mal:
| Código: | float a,b,c;
// la parte del try se ejecuta si todo lo que esta dentro de este
// funciona perfectamente
try{
a = b /c;
ShowMessage(FloatToStr(a));
}
// Pero si sucede cualquier error salta a la seccion del catch
catch(...) // catch(...) Captura cualquier Excepcion
{
ShowMessage("Error no se pudo completar la accion");
}
|
o tambien puedes probar lo siguiente:
| Código: | float a,b,c;
// la parte del try se ejecuta si todo lo que esta dentro de este
// funciona perfectamente
try{
a = b /c;
ShowMessage(FloatToStr(a));
}
// Pero si sucede cualquier error salta a la seccion del catch
catch(EZeroDivide &e) // catch(EZeroDivide) la excepcion de division entre cero
{
ShowMessage("Error no se puede dividir entre 0");
}
|
Espero que te sirva... |
|
| Volver arriba |
|
 |
Cesar C. Salazar Gonzalez Master


Registrado: 01 Oct 2002Mensajes: 2155Ubicación: San Cristóbal de Las Casas, Chiapas
|
Publicado: Mar 03 Feb, 2004 1:33 am Asunto: |
|
|
Gracias, por la Explicacion....
se la debia...
jeje
saludos... _________________
 |
|
| Volver arriba |
|
 |
|