Re: SInt64 and UInt64 problems with large values
Re: SInt64 and UInt64 problems with large values
- Subject: Re: SInt64 and UInt64 problems with large values
- From: Ondra Cada <email@hidden>
- Date: Sat, 2 Apr 2005 11:42:26 +0200
Ken,
On 2.4.2005, at 11:00, Ken Tozier wrote:
In lieu of using "long long" and "unsigned long long" in my code, I'm
trying to use the more compact "SInt64" and "UInt64" both of which the
compiler seems to be aware of , but when I try to give UInt64 a large
constant hex value such as 0xFFFFFFFFFFFFFFFF, the complier complains
that "integer constant is too large for "long" type." I searched for
the definition of UInt64 and found it in MacTypes.h where it is
defined as "typedef unsigned long long UInt64" so why does the
compiler not allow the maximum hex value? Is there some undocumented
upper limit to long long values?
Check the compiler support for big constants. By default, these
constants are integers (the compiler, at the time the constant is
interepreted, does not and cannot know you will store it into a long or
even long long), and thus self-evidently too big.
You'll have to use some suffix, like 0xFF...FFull (or something), to
let the compiler know the constant is long long AND unsigned, too. At
the moment, I don't recall the proper suffix though, sorry.
---
Ondra Čada
OCSoftware: email@hidden http://www.ocs.cz
private email@hidden http://www.ocs.cz/oc
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden