How can I compute the range of signed and unsigned types
Chris Richard Adams
chrisa at ASPATECH.COM.BR
Wed Apr 18 07:02:21 PDT 2001
This is my point - how can I compute this so my code could run on any
machine. I need to show the range possible on any machine...how can I
From: James Cownie [mailto:jcownie at etnus.com]
Sent: Wednesday, April 18, 2001 10:19 AM
To: Beowulf (E-mail)
Subject: Re: How can I compute the range of signed and unsigned types
Jag wrote : -
> Those sizes are defined for the C language. In order words, no
> matter if you're on a 32-bit machine or a 64-bit machine, an int is
> always going to be 32-bit and thus have the same numeric range
> because the standards say so. This goes for all the basic types,
> not just int's.
No, the C standard says nothing of the sort.
All the C standard says is that
1) sizeof (char) == 1
2) sizeof (short) >= sizeof (char)
3) sizeof (int) >= sizeof (short)
4) sizeof (long) >= sizeof (int)
5) sizeof (long long) >= sizeof (long).
It also does not specify that the representation of an int is two's
complement, so even on machines with the same sizeof(int) the legal
ranges could differ.
James Cownie <jcownie at etnus.com>
Etnus, LLC. +44 117 9071438
Beowulf mailing list, Beowulf at beowulf.org
To change your subscription (digest mode or unsubscribe) visit
More information about the Beowulf