fixstrtod.c
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:1k
源码类别:

通讯编程

开发平台:

Visual C++

  1. /* 
  2.  * fixstrtod.c --
  3.  *
  4.  * Source code for the "fixstrtod" procedure.  This procedure is
  5.  * used in place of strtod under Solaris 2.4, in order to fix
  6.  * a bug where the "end" pointer gets set incorrectly.
  7.  *
  8.  * Copyright (c) 1995 Sun Microsystems, Inc.
  9.  *
  10.  * See the file "license.terms" for information on usage and redistribution
  11.  * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  12.  *
  13.  * RCS: @(#) $Id: fixstrtod.c,v 1.2 1998/09/14 18:39:44 stanton Exp $
  14.  */
  15. #include <stdio.h>
  16. #undef strtod
  17. /*
  18.  * Declare strtod explicitly rather than including stdlib.h, since in
  19.  * somes systems (e.g. SunOS 4.1.4) stdlib.h doesn't declare strtod.
  20.  */
  21. extern double strtod();
  22. double
  23. fixstrtod(string, endPtr)
  24.     char *string;
  25.     char **endPtr;
  26. {
  27.     double d;
  28.     d = strtod(string, endPtr);
  29.     if ((endPtr != NULL) && (*endPtr != string) && ((*endPtr)[-1] == 0)) {
  30. *endPtr -= 1;
  31.     }
  32.     return d;
  33. }