Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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	*restrict decpt, int *restrict
       sign);

       char *fcvt(double value,	int ndigit, int	*restrict decpt, int *restrict
       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	 rela-
       tive 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 in-
       cluded in the returned string if	value is less than 0.  A radix charac-
       ter  is included	in the returned	string if value	is not a whole number.
       Trailing	zeros are suppressed where value is not	a whole	 number.   The
       radix  character	 is determined by the current locale. If setlocale(3C)
       has not been called successfully, the default locale, POSIX,  is	 used.
       The  default locale specifies a period (.) as the radix character.  The
       LC_NUMERIC category determines the value	of the radix character	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()	might point to thread-specific
       data  that can be overwritten by	subsequent calls to these functions by
       the same	thread.

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

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

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Interface Stability	     |Standard			   |
       +-----------------------------+-----------------------------+
       |MT-Level		     |Safe			   |
       +-----------------------------+-----------------------------+

SEE ALSO
       printf(3C), setlocale(3C), sprintf(3C), attributes(5), standards(5)

SunOS 5.10			  18 May 2004			      ecvt(3C)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | USAGE | ATTRIBUTES | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ecvt&sektion=3c&manpath=SunOS+5.10>

home | help