From owner-freebsd-current@FreeBSD.ORG Thu May 13 19:23:35 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B755C16A4CE for ; Thu, 13 May 2004 19:23:35 -0700 (PDT) Received: from duchess.speedfactory.net (duchess.speedfactory.net [66.23.201.84]) by mx1.FreeBSD.org (Postfix) with SMTP id 1779A43D31 for ; Thu, 13 May 2004 19:23:35 -0700 (PDT) (envelope-from ups@tree.com) Received: (qmail 19997 invoked by uid 89); 14 May 2004 02:23:33 -0000 Received: from duchess.speedfactory.net (66.23.201.84) by duchess.speedfactory.net with SMTP; 14 May 2004 02:23:33 -0000 Received: (qmail 19987 invoked by uid 89); 14 May 2004 02:23:33 -0000 Received: from unknown (HELO palm.tree.com) (66.23.216.49) by duchess.speedfactory.net with SMTP; 14 May 2004 02:23:33 -0000 Received: from palm.tree.com (localhost.tree.com [127.0.0.1]) by palm.tree.com (8.12.10/8.12.10) with ESMTP id i4E2NV9F006242; Thu, 13 May 2004 22:23:31 -0400 (EDT) (envelope-from ups@palm.tree.com) Message-Id: <200405140223.i4E2NV9F006242@palm.tree.com> X-Mailer: exmh version 2.6.3 04/04/2003 with nmh-1.0.4 To: Larry Rosenman In-Reply-To: Message from Larry Rosenman <9AE9B859FD197218F21D81D0@lerlaptop.lerctr.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 13 May 2004 22:23:31 -0400 From: Stephan Uphoff cc: freebsd-current@freebsd.org Subject: Re: strtod vs NAN? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 May 2004 02:23:35 -0000 Try: char *ptr; and num=strtod(input,&ptr); Larry Rosenman wrote: > > Isn't strtod supposed to deal with NAN's? > > I ran: > > $ cat test3.c > #include > #include > #include > int main(int argc,char **argv) > { > double num; > char *input=3D"NAN"; > char *border1=3D"/////////////////////////////"; > char *input2=3D"inf"; > char *border2=3D"/////////////////////////////"; > char **ptr; > > num=3Dstrtod(input,ptr); > printf("num=3D%g\n",num); > printf("errno=3D%ld\n",errno); > printf("ptr=3D%p, points to %s\n",*ptr,*ptr); > num=3Dstrtod(input2,ptr); > printf("num=3D%g\n",num); > printf("errno=3D%ld\n",errno); > printf("ptr=3D%p, points to %s\n",*ptr,*ptr); > exit(0); > } > $ > > and I get a SIGSEGV in the first strtod call. > > the manpage for strtod implies, to me, that it should deal with it. > > Thanks! > > This is with -CURRENT as of: > > $ uname -a > FreeBSD lerlaptop.lerctr.org 5.2-CURRENT FreeBSD 5.2-CURRENT #111: Sat May=20 > 1 23:09:13 CDT 2004=20 > ler@lerlaptop.lerctr.org:/usr/obj/usr/src/sys/LERLAPTOP i386 > $ > --=20 > Larry Rosenman http://www.lerctr.org/~ler > Phone: +1 972-414-9812 E-Mail: ler@lerctr.org > US Mail: 1905 Steamboat Springs Drive, Garland, TX 75044-6749 >