Browse Source

Add in gcvt()

Eric Andersen 22 years ago
parent
commit
087a618019
2 changed files with 12 additions and 1 deletions
  1. 1 1
      libc/stdlib/Makefile
  2. 11 0
      libc/stdlib/gcvt.c

+ 1 - 1
libc/stdlib/Makefile

@@ -38,7 +38,7 @@ MOBJ2=atexit.o exit.o
 
 CSRC =	abort.c getenv.c mktemp.c qsort.c realpath.c abs.c bsearch.c \
 	mkstemp.c putenv.c rand.c random.c setenv.c system.c div.c ldiv.c \
-	getpt.c ptsname.c grantpt.c unlockpt.c
+	getpt.c ptsname.c grantpt.c unlockpt.c gcvt.c
 ifeq ($(HAS_FLOATING_POINT),true)
 	CSRC += strtod.c
 endif

+ 11 - 0
libc/stdlib/gcvt.c

@@ -0,0 +1,11 @@
+
+#include <stdlib.h>
+
+#ifdef __UCLIBC_HAS_FLOATS__
+#define MAX_NDIGIT 17
+char * gcvt(double number, size_t ndigit, char* buf)
+{
+    sprintf(buf, "%.*g", (ndigit > MAX_NDIGIT)? MAX_NDIGIT : ndigit, number);
+    return buf;
+}
+#endif