In this tutorial, we are learning different data types used in C programming along with the range of each data type.
Table of Contents
What is Data in Programming?
It is generally known as useful information which is referred, stored and processed as per the processor’s requirements.
What is Data Type in Programming?
Now, this information is stored in various formats as per the nature of datum.
The C programming language provides us with a wide and vivid set of data types, such as int, float, char, etc.
Data types in C are majorly categorized into 3 types.
As per the above schematic diagram, data types are bifurcated based on the nature of the data that gets stored.
Moreover, these data types differ in size too.
Generally, the signed, unsigned character and signed, unsigned short integer is of 8 bits. The signed and unsigned integer of 16 bits.
And signed, unsigned integer and float have a size of 32 bits.
For the need of greater sized data types, double(size:64 bits) and long double(size: 80 bits) are used.
The basic datatypes are already defined in C programming, so you can use them directory in your code.
‘int’ is the data type used to represent integer values of the decimal number system. It is further classified into signed and unsigned. The signed int is used for the integers on the left as well as the right of zero on the number line. Whereas unsigned int is used for the integers on the right of zero on the number line.
This data type is used for the representation of characters. Its size is 8 bits and the range is different for the signed and unsigned one.
This data type represents all the numbers whether decimal or integer, present on the number line. Depending upon the size it is classified into further three categories- float, double and long double.
These are special data types that hold the address of the variable they point to. ‘&’ and ‘*’ are the two operators that are used when pointers are implemented. ‘&’ operator gives the address of the variable, whereas ‘*’ operator accesses the value at an address.
User has to define these data types before using it.
Typedef, an abbreviation for type definition is a user-defined data type. Which means, it defines an identifier that can represent an existing data type. This data type increases the readability of codes with greater complexity.
Example:
typedef int numbers; numbers a=1;
The above code states that numbers can be used to declare variables of type int.
It is another user-defined data type which does the job of creating a data type that can be assigned a value from a specific set of values.
It is declared by using the keyword ‘enum’.
Example:
enum prime (2,3,5,7,11,13,17,19); enum prime a,b; a=5; b=19;
These data types are derived from the basic data types.
It’s the collection of homogeneous data types that are stored in contiguous memory cells and locations.
Example:
int a[7]
It has 7 memory cells to store the 7 data elements as a[0], a[1], a[2], a[3], a[4], a[5] and a[6].
Here, above integer array is derived from the basic data type ‘int’.
It’s the collection of non-homogeneous data types. It is very popular as it stores all the properties of an element.
Example:
struct product { char name; int pnum; char consumer; int cnum; }
Above example is the collection of basic data types like char and int.
This data type is very similar to the structure as this one too stores non-homogeneous data types.
Example:
union product { char name; int pnum; char consumer; int cnum; }
What is the difference between structure and union in C?
They are different in terms of storage. In structure, each member has its own memory location, whereas all the members of a union share the same memory locations.
What is the difference between Derived data type and User Defined data types in C?
TYPE | SIZE | RANGE |
---|---|---|
Signed char | 8 bits | -128 to 127 |
Unsigned char | 8 bits | 0 to 255 |
Signed int | 16 bits | -32768 to 32767 |
Unsigned int | 16 bits | 0 to 65535 |
Signed short int | 8 bits | -128 to 127 |
Unsigned short int | 8 bits | 0 to 255 |
Signed long int | 32 bits | -2147483648 to 2147483647 |
Unsigned long int | 32 bits | 0 to 429967295 |
Float | 32 bits | 3.4E-38 to 3.4E+38 |
Double | 64 bits | 1.7E-308 to 1.7E+308 |
Long double | 80 bits | 3.4E-4932 to 1.1E+4932 |
In C and C++, Each data type has its storage classes in programming.
The detail about each of the data types we will see in the next part of this tutorial.
This is all about different data types used in C programming. If you have any specific questions to ask, write in the comment section below.
Happy Programming!