In this tutorial, you will learn primary data types in C programming.
Data types are used to determine the size and type of data stored in a variable. For example,
mark is a variable of type
int. That is
mark can store integer values.
C supports the following classes of data types:
- Primary data types.
- Derived data types.
- User-defined data types.
C supports five primary (fundamental) datatypes namely integer(
float), double-precision floating-point(
double) and void(
void). Many of them also include additional data types, such as long int and long double.
The following table contains various data types along with their size, range of values and format specifier.
|Type||Size (bytes)||Range of values||Format specifier|
|int||2||-32,768 to 32767||%d|
|char||1||-128 to 127||%c|
|float||4||3.4E -38 to 3.4E +38||%f|
|double||8||1.7E -308 to 1.7E +308||%lf|
|short int||1||-128 to 127||%hd|
|unsigned int||2||0 to 65535||%u|
|unsigned short int||1||0 t0 256||%hu|
|long int||4||-2,147,483,648 to 2,147,483,647||%ld|
|unsigned long int||4||0 to 4,294,967,295||%lu|
|long double||10||3.4E -4932 to 1.1E +4932||%Lf|
Integers are whole numbers having a range of values that are supported by a certain computer. In C, there are three types of integer storage:
long int, which are available in both
unsigned forms. That is integers can store both zero, positive and negative values but no decimal values.
int roll; int roll, mark; short int id; signed int x;
short int represents relatively small integer values and takes half the storage space of a typical int number.
unsigned int employ all of the bits for the magnitude of the number and are always positive. Because the default declaration implies a signed number, the use of the qualifier
signed on integers is optional.
Floating-point variables are used to store real numbers with 6 digits of precision. In C, floating-point numbers are defined by the keyword
float. To define a number with 14 numbers of precision, the type
double can be used. These are referred to as double-precision numbers.
long double can be used to increase precision even further.
float rate; double price;
char data type can be used to define a single character.
char demo = 'x';
void type has no values. This is typically used to specify the type of function that returns no value to the caller function.
Derived Data Types and User-Defined Data Types
Derived types are data types that are derived from fundamental data types. Arrays, pointers, function types, structures, and so on are examples.