Scroll to navigation

frexp(3) Library Functions Manual frexp(3)

NOMBRE

frexp, frexpf, frexpl - descompone un número en coma flotante en sus componentes entero y fraccional

BIBLIOTECA

Biblioteca Matemática (libm, -lm)

SINOPSIS

#include <math.h>
double frexp(double x, int *exp);
float frexpf(float x, int *exp);
long double frexpl(long double x, int *exp);

Requisitos de Macros de Prueba de Características para glibc (véase feature_test_macros(7)):

frexpf(), frexpl():


_ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
|| /* Desde glibc 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPCIÓN

Estas funciones se usan para para dividir el número x en una fracción normalizada y un exponente que se guarda en exp.

VALOR DEVUELTO

These functions return the normalized fraction. If the argument x is not zero, the normalized fraction is x times a power of two, and its absolute value is always in the range 1/2 (inclusive) to 1 (exclusive), that is, [0.5,1).

Si x es cero, la fracción normalizada será cero y se guardara en exp.

If x is a NaN, a NaN is returned, and the value of *exp is unspecified.

If x is positive infinity (negative infinity), positive infinity (negative infinity) is returned, and the value of *exp is unspecified.

ERRORES

No suceden errores.

ATRIBUTOS

Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

Interfaz Atributo Valor
frexp(), frexpf(), frexpl() Seguridad del hilo Multi-hilo seguro

ESTÁNDARES

C11, POSIX.1-2008.

HISTORIAL

C99, POSIX.1-2001.

The variant returning double also conforms to SVr4, 4.3BSD, C89.

EJEMPLOS

The program below produces results such as the following:


$ ./a.out 2560
frexp(2560, &e) = 0.625: 0.625 * 2^12 = 2560
$ ./a.out -4
frexp(-4, &e) = -0.5: -0.5 * 2^3 = -4

Código fuente

#include <float.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{

double x, r;
int exp;
x = strtod(argv[1], NULL);
r = frexp(x, &exp);
printf("frexp(%g, &e) = %g: %g * %d^%d = %g\n", x, r, r, 2, exp, x);
exit(EXIT_SUCCESS); }

VÉASE TAMBIÉN

ldexp(3), modf(3)

TRADUCCIÓN

La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es> y Marcos Fouces <marcos@debian.org>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.

2 Mayo 2024 Páginas de Manual de Linux 6.8