]> git.ipfire.org Git - thirdparty/glibc.git/blame - misc/efgcvt.c
* inet/getnetent_r.c: Define NEED_H_ERRNO.
[thirdparty/glibc.git] / misc / efgcvt.c
CommitLineData
60478656 1/* [efg]cvt -- compatibility functions for floating point formatting.
52e9a9d1 2Copyright (C) 1995, 1996 Free Software Foundation, Inc.
0923c7a5
RM
3This file is part of the GNU C Library.
4
5The GNU C Library is free software; you can redistribute it and/or
6modify it under the terms of the GNU Library General Public License as
7published by the Free Software Foundation; either version 2 of the
8License, or (at your option) any later version.
9
10The GNU C Library is distributed in the hope that it will be useful,
11but WITHOUT ANY WARRANTY; without even the implied warranty of
12MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13Library General Public License for more details.
14
15You should have received a copy of the GNU Library General Public
16License along with the GNU C Library; see the file COPYING.LIB. If
17not, write to the Free Software Foundation, Inc., 675 Mass Ave,
18Cambridge, MA 02139, USA. */
19
20#include <stdio.h>
60478656 21#include <stdlib.h>
52e9a9d1
RM
22#include <float.h>
23
24#define MAXDIG (DBL_DIG + DBL_MAX_10_EXP)
0923c7a5
RM
25
26char *
27fcvt (value, ndigit, decpt, sign)
28 double value;
29 int ndigit, *decpt, *sign;
30{
52e9a9d1 31 static char buf[MAXDIG];
0923c7a5 32
60478656 33 (void) fcvt_r (value, ndigit, decpt, sign, buf, sizeof buf);
0923c7a5
RM
34
35 return buf;
36}
37
38char *
39ecvt (value, ndigit, decpt, sign)
40 double value;
41 int ndigit, *decpt, *sign;
42{
52e9a9d1 43 static char buf[MAXDIG];
60478656
RM
44
45 (void) ecvt_r (value, ndigit, decpt, sign, buf, sizeof buf);
46
47 return buf;
0923c7a5
RM
48}
49
50char *
51gcvt (value, ndigit, buf)
52 double value;
53 int ndigit;
54 char *buf;
55{
56 sprintf (buf, "%.*g", ndigit, value);
57 return buf;
58}