Compatibilidad con el punto flotante
Muchas de las funciones de biblioteca en tiempo de ejecución de Microsoft requieren compatibilidad de punto flotante por parte de un coprocesador matemático o de las bibliotecas de punto flotante que acompañan al compilador. Las funciones de compatibilidad de punto flotante se cargan únicamente si son necesarias.
Cuando se usa un especificador de tipo de punto flotante en la cadena de formato de una llamada a una función de la familia printf o scanf, se debe especificar un valor de punto flotante o un puntero a un valor de punto flotante en la lista de argumentos para indicar al compilador que es necesario admitir puntos flotantes.
Consulte _fpieee_flt para ver código de ejemplo que muestre cómo controlar excepciones de punto flotante.
La precisión del punto flotante en los valores intermedios se controla por medio de las funciones _control87, _controlfp, __control87_2. El control de precisión en _controlfp está establecido de forma predeterminada en 53 bits (_PC_53). Si se vincula mediante FP10.OBJ, el control de precisión predeterminado cambia a 64 bits (_PC_64). En la línea de comandos del vinculador, FP10.OBJ debe aparecer antes de LIBC.LIB, LIBCMT.LIB o MSVCRT.LIB.
Funciones de punto flotante
Rutina |
Uso |
Equivalente de .NET Framework |
---|---|---|
Devolver el valor absoluto de int |
||
Calcular el arco coseno |
||
Calcular el arcoseno |
||
Calcular el arcotangente |
||
Convertir la cadena de caracteres en un valor de punto flotante de precisión doble |
||
Calcular las funciones Bessel _j0, _j1, _jn, _y0, _y1, _yn |
No es aplicable. Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma. |
|
Hallar el valor absoluto de un número complejo |
No es aplicable. |
|
Calcular la raíz cúbica |
No es aplicable. |
|
Hallar el techo de un entero |
||
Invertir el signo de punto flotante de precisión doble o el argumento de punto flotante de precisión doble larga |
No es aplicable. |
|
Obtener y borrar la palabra de estado de punto flotante |
No es aplicable. |
|
Obtener la palabra de control de punto flotante anterior y definir el nuevo valor de palabra de control |
No es aplicable. |
|
copysign, copysignf, copysignl, _copysign, _copysignf, _copysignl |
Devolver un valor con el signo de otro |
No es aplicable. |
Calcular el coseno |
||
Calcular la diferencia entre dos valores de hora especificados |
||
Dividir un entero entre otro, de lo cual se obtiene un cociente y un resto |
No es aplicable. |
|
Convertir double en una cadena de caracteres de la longitud especificada |
||
Calcular la función exponencial |
||
Hallar el valor absoluto |
||
Convertir double en una cadena que tenga el número especificado de dígitos después del separador decimal |
||
Averiguar si el valor de punto flotante de precisión doble dado es finito |
||
Hallar el entero más grande igual o menor que el argumento |
||
Hallar el resto del punto flotante |
||
Devolver la palabra de estado que contiene información sobre la clase de punto flotante |
System::Double::IsInfinity, System::Double::IsNegativeInfinity, System::Double::IsPositiveInfinity, System::Double::IsNan |
|
Invocar un controlador de interceptaciones definido por el usuario para las excepciones de punto flotante del IEEE |
No es aplicable. |
|
Reinicializar el paquete matemático de punto flotante |
|
|
Calcular el valor exponencial |
No es aplicable. |
|
Convertir el valor de punto flotante en una cadena de caracteres |
||
Calcular la hipotenusa de un triángulo rectángulo |
No es aplicable. |
|
Buscar elementos NaN (que no son números) en el valor de punto flotante de precisión doble dado |
||
Devolver el valor absoluto de long |
||
Calcular el producto del argumento y 2exp (potencia especificada) |
||
Dividir un entero long entre otro, de lo cual se obtiene un cociente y un resto |
No es aplicable. |
|
Calcular el logaritmo natural o de base 10. |
||
Extraer el valor exponencial del argumento de punto flotante de precisión doble |
No es aplicable. |
|
Desplazar unsigned long int a la izquierda (_lrotl) o a la derecha (_lrotr) |
No es aplicable. |
|
Tratar errores matemáticos |
No es aplicable. |
|
Devolver el valor más alto de dos valores |
||
Devolver el valor más bajo de dos valores |
||
Dividir el argumento en entero y fracción |
No es aplicable. |
|
Devolver un valor NaN reservado |
||
Devolver el siguiente elemento cercano representable |
No es aplicable. |
|
Calcular el valor elevado a una potencia |
||
printf, _printf_l, wprintf, _wprintf_l, printf_s, _printf_s_l, wprintf_s, _wprintf_s_l |
Escribir datos en stdout según el formato especificado |
|
Obtener el número seudoaleatorio |
||
Redondear al entero más cercano en el formato de punto flotante |
||
Desplazar unsigned int a la izquierda (_rotl) o a la derecha (_rotr) |
No es aplicable. |
|
Escalar el argumento por una potencia de 2 |
No es aplicable. |
|
Multiplicar por la potencia integral de FLT_RADIX |
No es aplicable. |
|
Leer datos de stdin según el formato especificado y escribir datos en la ubicación especificada |
||
Establecer un nuevo valor de palabra de control |
No es aplicable. |
|
Calcular el seno y seno hiperbólico |
||
Hallar la raíz cuadrada |
||
Inicializar series seudoaleatorias |
||
Obtener la palabra de estado de punto flotante |
No es aplicable. |
|
Convertir la cadena de caracteres en un valor de precisión doble |
||
Calcular la tangente y la tangente hiperbólica |