Available in

(3) (3)/es (3)/fr (3)/ja (3)/pl (3)/pt (3c) (3posix)

TOC

ecvt(3C)                 Standard C Library Functions                 ecvt(3C)



NAME

       ecvt, fcvt, gcvt - convert floating-point number to string

SYNOPSIS

       #include <stdlib.h>

       char *ecvt(double value, int ndigit, int *decpt, int *sign);

       char *fcvt(double value, int ndigit, int *decpt, int *sign);

       char *gcvt(double value, int ndigit, char *buf);

DESCRIPTION

       The  ecvt(), fcvt() and gcvt() functions convert floating-point numbers
       to null-terminated strings.

   ecvt()
       The ecvt() function converts  value  to  a  null-terminated  string  of
       ndigit  digits  (where ndigit is reduced to an unspecified limit deter‐
       mined by the precision of a  double)  and  returns  a  pointer  to  the
       string.   The high-order digit is non-zero, unless the value is 0.  The
       low-order digit is rounded.
        The position of the radix character relative to the beginning  of  the
       string  is stored in the integer pointed to by decpt (negative means to
       the left of the returned digits). The radix character is  not  included
       in  the  returned  string.  If  the sign of the result is negative, the
       integer pointed to by sign is non-zero, otherwise it is 0.

       If the converted value is out of range or  is  not  representable,  the
       contents of the returned string are unspecified.

   fcvt()
       The fcvt() function is identical to ecvt() except that ndigit specifies
       the number of digits desired after the radix point.  The  total  number
       of digits in the result string is restricted to an unspecified limit as
       determined by the precision of a double.

   gcvt()
       The gcvt() function converts value to a null-terminated string (similar
       to  that of the %g format of printf(3C)) in the array pointed to by buf
       and returns buf. It produces ndigit significant digits (limited  to  an
       unspecified  value  determined  by  the precision of a double) in %f if
       possible, or %e (scientific  notation)  otherwise.   A  minus  sign  is
       included in the returned string if value is less than 0.  A radix char‐
       acter is included in the returned string if value is not a  whole  num‐
       ber.   Trailing zeros are suppressed where value is not a whole number.
       The radix character is determined by  the  current  locale.  If  setlo‐
       cale(3C)  has  not been called successfully, the default locale, POSIX,
       is used.  The default locale specifies a period (.) as the radix  char‐
       acter.  The LC_NUMERIC category determines the value of the radix char‐
       acter within the current locale.

RETURN VALUES

       The ecvt() and fcvt() functions return a pointer to  a  null-terminated
       string of digits.

       The gcvt() function returns buf.

ERRORS

       No errors are defined.

USAGE

       The return values from ecvt() and fcvt() may point to static data which
       may be overwritten by subsequent calls to these functions.

       For portability to implementations conforming to  earlier  versions  of
       this document, sprintf(3C) is preferred over this function.

ATTRIBUTES

       See attributes(5) for descriptions of the following attributes:


       +-----------------------------+-----------------------------+
       |      ATTRIBUTE TYPE         |      ATTRIBUTE VALUE        |
       +-----------------------------+-----------------------------+
       |MT-Level                     |Unsafe                       |
       +-----------------------------+-----------------------------+

SEE ALSO

       printf(3C), setlocale(3C), sprintf(3C), attributes(5)



SunOS 5.9                         29 Dec 1996                         ecvt(3C)

COMMENTS

Add your comment here. Whitespace and linebreaks are preserved. URLs are linked automatically.
CAPTCHA

No HTML allowed. URLs will be linked with nofollow attribute. Whitespace is preserved.