frexpl man page on Archlinux

Man page or keyword search:  
man Server   11224 pages
apropos Keyword Search (all sections)
Output format
Archlinux logo
[printable version]

FREXP(3)		   Linux Programmer's Manual		      FREXP(3)

       frexp, frexpf, frexpl - convert floating-point number to fractional and
       integral components

       #include <math.h>

       double frexp(double x, int *exp);
       float frexpf(float x, int *exp);
       long double frexpl(long double x, int *exp);

       Link with -lm.

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       frexpf(), frexpl():
	   _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
	   or cc -std=c99

       The  frexp()  function  is used to split the number x into a normalized
       fraction and an exponent which is stored in exp.

       The frexp() function returns 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  (exclu‐
       sive), that is, [0.5,1).

       If  x  is zero, then the normalized fraction is zero and zero is stored
       in 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 (nega‐
       tive infinity) is returned, and the value of *exp is unspecified.

       No errors occur.

   Multithreading (see pthreads(7))
       The frexp(), frexpf(), and frexpl() functions are thread-safe.

       C99, POSIX.1-2001.  The variant returning double also conforms to SVr4,
       4.3BSD, C89.

       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

   Program source

       #include <math.h>
       #include <float.h>
       #include <stdio.h>
       #include <stdlib.h>

       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, FLT_RADIX, exp, x);

       ldexp(3), modf(3)

       This page is part of release 3.65 of the Linux  man-pages  project.   A
       description  of	the project, and information about reporting bugs, can
       be found at

				  2013-08-06			      FREXP(3)

List of man pages available for Archlinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net