HPlogo HP-UX Reference > M

modf(3M)

HP-UX 11i Version 2: December 2007 Update
» 

Technical documentation

 » Table of Contents

 » Index

NAME

modf(), modff(), modfl(), modfw(), modfq() — decompose floating-point number

SYNOPSIS

#include <math.h>

double modf(double x, double *iptr);

Itanium(R)-based System Only

float modff(float x, float *iptr);

long double modfl(long double x, long double *iptr);

extended modfw(extended x, extended *iptr);

quad modfq(quad x, quad *iptr);

DESCRIPTION

The modf() function breaks the argument x into integral and fractional parts, each of which has the same sign as the argument. It stores the integral part as a double in the object pointed to by iptr.

Itanium-based System Only

modff() is a float version of modf(); it takes float and float * arguments and returns a float result.

modfl() is a long double version of modf(); it takes long double and long double * arguments and returns a long double result.

modfw() is an extended version of modf(); it takes extended and extended * arguments and returns an extended result.

modfq() is equivalent to modfl() on HP-UX systems.

USAGE

To use (for Itanium-based systems) modff(), compile either with the default -Ae option or with the -Aa option.

To use (for Itanium-based systems) modfl(), modfw(), or modfq(), compile either with the default -Ae option or with the -Aa and -D_HPUX_SOURCE options.

To use (for Itanium-based systems) modfw() or modfq(), compile also with the -fpwidetypes option.

To use these functions, make sure your program includes <math.h>, and link in the math library by specifying -lm on the compiler or linker command line.

For more information, see the HP-UX Floating-Point Guide.

RETURN VALUE

modf(±x,iptr) returns a result with the same sign as x.

modf(±Inf,iptr) returns ±0 and stores ±Inf in the object pointed to by iptr.

modf(NaN,iptr) stores a NaN in the object pointed to by iptr and returns a NaN.

ERRORS

No errors are defined.

STANDARDS CONFORMANCE

modf() : SVID3, XPG4.2, ANSI C, ISO/IEC C99 (including Annex F, ``IEC 60559 floating-point arithmetic'')

modff(), modfl() : ISO/IEC C99 (including Annex F, ``IEC 60559 floating-point arithmetic'')