frexpf man page on ElementaryOS

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

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

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

SYNOPSIS
       #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():
	   _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 ||
	   _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
	   or cc -std=c99

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

RETURN VALUE
       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.

ERRORS
       No errors occur.

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

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

EXAMPLE
       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>

       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, FLT_RADIX, exp, x);
	   exit(EXIT_SUCCESS);
       }

SEE ALSO
       ldexp(3), modf(3)

COLOPHON
       This page is part of release 3.54 of the Linux  man-pages  project.   A
       description  of	the project, and information about reporting bugs, can
       be found at http://www.kernel.org/doc/man-pages/.

				  2013-08-06			      FREXP(3)
[top]

List of man pages available for ElementaryOS

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]
Tweet
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