El tipo de datos DECIMAL es un método independiente del sistema para la representación de hasta 32 dígitos significativos, con o sin una coma decimal y con exponentes en el rango de -128 a +126. ESQL/C proporciona rutinas que facilitan la conversión de números de tipo DECIMAL a y desde cada tipo de datos permitido en el lenguaje C. Los números de tipo DECIMAL constan de un exponente y una mantisa (o componente fraccional) en base 100. En formato normalizado, el primer dígito de la mantisa debe ser mayor que cero.
El tipo de datos DECIMAL se representa internamente con la estructura dec_t. La estructura decimal y la definición de tipo dec_t pueden encontrarse en el archivo de cabecera decimal.h, que está incluido en el producto ESQL/C. Incluya este archivo en todos los archivos fuente C que utilicen cualquiera de las funciones decimales.
Todas las operaciones con números de tipo decimal deben realizarse utilizando las funciones de biblioteca ESQL/C siguientes para el tipo de datos decimal. Cualesquiera otras operaciones, modificaciones o análisis pueden producir resultados impredecibles.
Nombre de función | Descripción |
---|---|
deccvasc( ) | Convierte el tipo C int1 en el tipo DECIMAL |
dectoasc( ) | Convierte el tipo DECIMAL en el tipo C int1 |
deccvint( ) | Convierte el tipo C int en el tipo DECIMAL |
dectoint( ) | Convierte el tipo DECIMAL en el tipo C int |
deccvlong( ) | Convierte el tipo C int4 en el tipo DECIMAL |
dectolong( ) | Convierte el tipo DECIMAL en el tipo C int4 |
deccvflt( ) | Convierte el tipo C float en el tipo DECIMAL |
dectoflt( ) | Convierte el tipo DECIMAL en el tipo C float |
deccvdbl( ) | Convierte el tipo C double en el tipo DECIMAL |
dectodbl( ) | Convierte el tipo DECIMAL en el tipo C double |
decadd( ) | Añade dos números DECIMAL |
decsub( ) | Resta dos números DECIMAL |
decmul( ) | Multiplica dos números DECIMAL |
decdiv( ) | Divide dos números DECIMAL |
deccmp( ) | Compara dos números DECIMAL |
deccopy( ) | Copia un número DECIMAL |
dececvt( ) | Convierte un valor DECIMAL en una serie ASCII |
decfcvt( ) | Convierte un valor DECIMAL en una serie ASCII |
Consulta relacionada
Para obtener más información acerca de las funciones individuales, consulte el documento siguiente:
IBM Informix ESQL/C Programmer’s Manual.
Funciones BIGINT para C
Funciones DATE para C
Funciones DATETIME e INTERVAL para C
Invocar una función C desde un programa EGL