This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Scanf with a long long.


On Thu, Sep 06, 2001 at 12:54:13AM +0200, Kurt Roeckx wrote:
> I need use a 64 bit number, and int64_t is defined as a long
> long.
> 
> The problem is that scanf doesn't like numbers bigger then
> 0xFFFFFFFF, and always returns that number in that case.  printf
> works fine with them.
> 
> An example is doing this:
> 
> 	long long int	i;
> 
> 	sscanf("123456789", "%Lx", &i);
> 	printf("%llx\n%llx\n", i, i + 1);
> 
> it will print:
> 
> ffffffff
> 100000000
> 
> This problem seems to be reported once before in 1997, but still
> doesn't seem to be fixed.
> I'm using cygwin 1.3.2 on win98.

It's a newlib problem. Nobody implemented strtoll or strtoull
so far.  So scanf can't call them.

Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]