From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



Excepción Causada por Dividir un Dato de Tipo Entero por Cero en CVI



Software Primario: LabWindows/CVI Development Systems>>Full Development System
Versión de Software Primario: 4.0.1
Versión de Software Primario Corregido: N/A
Software Secundario: N/A

Problema:
En CVI, si usted divide un tipo de dato flotante o doble por cero, el resultado es +INF, pero si un entero es dividido por cero, sucederá un error de aplicación con el error "División entre cero", y el programa se detendrá. ¿Cómo puedo evitar este error?


Solución:
Este no es un problema de software, más bien es una limitación con el lenguaje ANSI-C, el cual no tiene un manejador de excepciones. C++ si cuenta con este manejador de excepciones.

La única forma de evitar este error en CVI es utilizando un if para checar si el denominador es diferente de cero antes de realizar la división. 



Ligas Relacionadas:

 

KnowledgeBase 2LR84UL8: Does LabWindows/CVI Support 64-bit Integers?
KnowledgeBase 0LJ93RTL: Incorrect Value Produced When Rounding a Value from Double to Integer



Archivos Adjuntos:





Día del Reporte: 10/14/1997
Última Actualización: 03/04/2009
Identificación del Documento: 12DEQPL1