Might this be a locale issue?  I believe that you can specify the scanf
parsing rules such that either of:
        1,234.567
        1.234,567
gets parsed as "one thousand, two hundred thirty-four decimal ..."

If cygwin's code base includes locale support, maybe the default local
has changed.

On Fri, Apr 27, 2001 at 11:44:26AM -0500, Mark Schamberger wrote:
> I have verified this problem on three different machines, each with the
> complete "current" installation of cygwin.  (Windows NT4.0 sp6, Windows
> 2000 sp1)
> 
> When using sscanf to read double values from a string, the resulting
> value is incorrect.  The following piece of code demonstrates the
> problem:
> 
> >>>>>>>>>>>>>>>>>>>>>
> #include <stdio.h>
> 
> int main(int argc, char *argv[])
> {
>         double d;
> 
>         sscanf("12.345","%lg",&d);
>         printf("%lg\n",d);
> }
> >>>>>>>>>>>>>>>>>>>>>
> 
> Instead of the expected 12.345, it results in 12345 (it appears that
> decimal points and exponents are not understood properly).
> 
> If I revert FROM cygwin 1.3.1-1 back TO cygwin 1.1.8-2, the bug
> disappears.
> 
> Anyone else experience this problem?
> 
> Thanks, Mark Schamberger
> [EMAIL PROTECTED]
> 
> --
> Want to unsubscribe from this list?
> Check out: http://cygwin.com/ml/#unsubscribe-simple

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple

Reply via email to