Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > E


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


ecvt(), fcvt(), gcvt() — convert floating-point number to string


#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);

Obsolescent Interfaces

int ecvt_r( double value, int ndigit, int *decpt, int *sign, char *buffer, int buflen); int fcvt_r( double value, int ndigit, int *decpt, int *sign, char *buffer, int buflen);



Converts value to a null-terminated string of ndigit digits and returns a pointer to the string. The high-order digit is non-zero, unless the value is zero. The low-order digit is rounded. The position of the radix character relative to the beginning of the string is stored indirectly through 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 word pointed to by sign is non-zero, otherwise it is zero.

One of three non-digit characters strings could be returned if the converted value is out of range. A -- or ++ is returned if the value is larger than the exponent can contain, and is negative, or positive, respectively. The third string is returned if the number is illegal, a zero divide for example. The result value is Not A Number (NAN) and would return a ? character.


Identical to ecvt(), except that the correct digit has been rounded for printf %f (FORTRAN F-format) output of the number of digits specified by ndigit.


Converts the value to a null-terminated string in the array pointed to by buf and returns buf. It produces ndigit significant digits in FORTRAN F-format if possible, or E-format otherwise. A minus sign, if required, and a radix character is included in the returned string. Trailing zeros are suppressed. The radix character is determined by the currently loaded NLS environment (see setlocale(3C)). If setlocale() has not been called successfully, the default NLS environment, "C", is used (see lang(5)). The default environment specifies a period (.) as the radix character.

Obsolescent Interfaces

ecvt_r() and fcvt_r() convert floating-point number to string.



The LC_NUMERIC category determines the value of the radix character within the current NLS environment.


The values returned by ecvt() and fcvt() point to an array whose content is overwritten by subsequent calls to these interfaces by the same thread.

ecvt_r() and fcvt_r() are obsolescent interfaces supported only for compatibility with existing DCE applications. New multi-threaded applications should use ecvt() and fcvt().


ecvt() and fcvt() were developed by AT&T. gcvt() was developed by AT&T and HP.


ecvt(): XPG2

fcvt(): XPG2

gcvt(): XPG2

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.