Data Types- their sizes and ranges
[Back]
** This is compiler dependant- see your compiler docs for your actual values
16-bit data types, sizes, and ranges
Type |
Bits |
Value Range |
Typical Usage |
unsigned char |
8 |
0 to 255 |
Small numbers and full PC character set |
char |
8 |
-128 to 127 |
Very small numbers and ASCII characters |
enum |
16 |
-32,768 to 32,767 |
Ordered sets of values |
unsigned int |
16 |
0 to 65,535 |
Larger numbers and loops |
short int |
16 |
-32,768 to 32,767 |
Counting, small numbers, loop control |
int |
16 |
-32,768 to 32,767 |
Counting, small numbers, loop control |
unsigned long |
32 |
0 to 4,294,967,295 |
Astronomical distances |
long |
32 |
-2,147,483,648 to 2,147,483,647 |
Large numbers, populations |
float |
32 |
3.4 ^ 10-38 to 3.4 ^ 1038 |
Scientific (7-digit precision) |
double |
64 |
1.7 ^ 10-308 to 1.7 ^ 10308 |
Scientific (15-digit precision) |
long double |
80 |
3.4 ^ 10-4932 to 1.1 ^ 104932 |
Financial (18-digit precision) |
near pointer |
16 |
Not applicable |
Manipulating memory addresses |
far pointer |
32 |
Not applicable |
Manipulating addresses outside current segment |
32-bit data types, sizes, and ranges
Type |
Bits |
Value Range |
Typical Usage |
unsigned char |
8 |
0 to 255 |
Small numbers and full PC character set |
char |
8 |
-128 to 127 |
Very small numbers and ASCII characters |
short int |
16 |
-32,768 to 32,767 |
Counting, small numbers, loop control |
unsigned int |
32 |
0 to 4,294,967,295 |
Large numbers and loops |
int |
32 |
-2,147,483,648 to 2,147,483,647 |
Counting, small numbers, loop control |
unsigned long |
32 |
0 to 4,294,967,295 |
Astronomical distances |
enum |
32 |
-2,147,483,648 to 2,147,483,647 |
Ordered sets of values |
long |
32 |
-2,147,483,648 to 2,147,483,647 |
Large numbers, populations |
float |
32 |
3.4 ^ 10-38 to 3.4 ^ 1038 |
Scientific (7-digit precision) |
double |
64 |
1.7 ^ 10-308 to 1.7 ^ 10308 |
Scientific (15-digit precision) |
long double |
80 |
3.4 ^ 10-4932 to 1.1 ^ 104932 |
Financial (18-digit precision) |
[Back]