--- gforth/engine/ecvt.c 1997/05/21 20:40:07 1.1 +++ gforth/engine/ecvt.c 1999/03/28 16:10:03 1.4 @@ -1,5 +1,25 @@ -/* cheap ecvt replacement */ +/* cheap ecvt replacement + Copyright (C) 1998 Free Software Foundation, Inc. + + This file is part of Gforth. + + Gforth is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version 2 + of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#include #include "config.h" #include extern double floor(double); @@ -53,7 +73,7 @@ char* ecvt(double x, int len, int* exp, scratch[j]='0'; } } - if(j==0) + if(j<0) { scratch[0]='1'; *exp += 1; @@ -69,8 +89,8 @@ char* ecvt(double x, int len, int* exp, int main(int argc, char ** argv) { int a, b; - char * conv=ecvt(PI*1e10,20,&a,&b); + char * conv=ecvt(9e0,20,&a,&b); - printf("ecvt Test: %f -> %s, %d, %d\n",PI,conv,a,b); + printf("ecvt Test: %f -> %s, %d, %d\n",9e0,conv,a,b); } #endif