Chapter 5
C Data Types
In the C programming language,
data types refer to an extensive system used for
declaring variables or functions of different types.
The type of a variable determines how
much space it occupies in storage and how the bit pattern stored is interpreted.
The types in C can be classified as follows:
S.N. Types and Description
1 Basic Types:
They are arithmetic types and consists of the two types:
(a) integer types and (b) floatingpoint
types.
2 Enumerated types:
They are again arithmetic types and they are used to define variables that can only be
assigned certain discrete integer values throughout the program.
3 The type void:
The type specifier void indicates that no value is available.
4 Derived types:
They include (a) Pointer types, (b) Array types,
(c) Structure types, (d) Union types and
(e) Function types.
The array types and structure types are referred to collectively as the aggregate types.
The
type of a function specifies the type of the function's return value.
We will see basic types
in the following section, whereas, other types will be covered in the upcoming chapters.
Integer Types
Following table gives you details about standard integer types with its storage sizes and
value ranges:
Type Storage size Value range
Char 1 byte - 128 to 127 or 0 to 255
unsigned char 1 byte 0 to 255
signed char 1 byte -128 to 127
Int 2 or 4 bytes -32,768 to 32,767 or -2,147,483,648 to 2,147,483,647
unsigned int 2 or 4 bytes 0 to 65,535 or 0 to 4,294,967,295
Short 2 bytes -32,768 to 32,767
unsigned short 2 bytes 0 to 65,535
Long 4 bytes -2,147,483,648 to 2,147,483,647
unsigned long 4 bytes 0 to 4,294,967,295
To get the exact size of a type or a variable on a particular platform, you can use
the sizeof operator. The expressions sizeof(type) yields the storage size of the object or
type in bytes.
Following is an example to get the size of int type on any machine:
#include