C Data Types

In C programming language, a data type determines the type of data that can be stored in variable(Variable is a name given to the memory location). Data type is mainly used to save memory space.

There are different types of data types in C programming language. They are,

TypesData types
Basic Data Typeint, char, float, double
Enumerated Data Typeenum
Void Data Typevoid
Derived Data Typearray, pointer, structure, union, function

Basic Data Type

Basic data type is also called as primitive data type. Basic data type are predefined data types in C programming language.

Integer Data type

Integer data type is used to store the whole numbers. Integer data type has three classes of integer storage, they are short int, int and long int and all the three classes can be used as signed integers or as unsigned integers.

TypeSize(in byte)RangeControl string
signed short int1-128 to 127%h
unsigned short int10 to 255%uh
int or signed int2-32768 to 32767%d or %i
unsigned int20 to 65535%u
signed long int4-2147483648 to 2147483647%ld
unsigned long int40 to 4294967295%lu

Character data type

Character data type are internally stored as integers and it is used to store single character. Each character has its equivalent ASCII value. Eg: Character ‘A’ has ASCII value 65.

TypeSize(in byte)RangeControl string
char or signed char1-128 to 127%c
unsigned char10 to 255%c

Floating point data type

Float data type is used to store real numbers that’s decimal point numbers.

TypeSize(in byte)RangeControl string
float113.4E – 38 to 3.4E + 38%f
double81.7E – 308 to 1.7E + 308%lf
long double103.4E – 4932 to 1.1E + 4932%Lf

Note:

  • float data type will take up to 6 digits after the decimal point. Eg: 12.6234
  • double data type will take up to 12 digits after the decimal point. Eg: 7.983457989
  • long double data type allow us to take more than 12 digits after the decimal point. Eg: 3.98345672343743892

Example

#include<stdio.h>
#include<limits.h>
int main()
{
    int a;
    float b;
    char c;
    double d;
    printf("The memory allocated for integer data type is %d \n", sizeof(a));
    printf("The memory allocated for float data type is %d \n", sizeof(b));
    printf("The memory allocated for character data type is %d \n", sizeof(c));
    printf("The memory allocated for double data type is %d \n", sizeof(d));
    return 0;
}

Output

The memory allocated for integer data type is 4
The memory allocated for float data type is 4
The memory allocated for character data type is 1
The memory allocated for double data type is 8

Enumerated Data Type

Enumerated data type is also called Enum data type which consist of named integer constant as a list. When we declare enum data type it starts with 0 by default and the the values will be incremented by 1 in a sequential.

Syntax:

enum identifier[optional {enumeration_list}];

Example

enum month{Jan, Feb, Mar}

The variables Jan, Feb, and Mar are assigned to 0, 1, and 2 by default.

enum month{Jan = 10, Feb, Mar}

The variables Feb and Mar are assigned as 11 and 12 by default, because enum data type increment by one.

Example program

#include<stdio.h>
int main()
{
        enum month{Jan = 10, Feb, Mar};
        if(Mar == 12)
            printf("The default value assigned for Mar is 12");
        return 0;
}

Output

The default value assigned for Mar is 12

Void data type

If we define a function which is not returning any value, we can mark the return type as void. If we don’t want to pass any parameter we can leave it as empty.

Example

#include<stdio.h>
void main()
{
        printf("This is an example for void data type");
        return ;
}

Output

This is an example for void data type

More Reading

Post navigation

1 Comment

  • Nice weblog right here! Also your website loads
    up very fast! What host are you the use of?
    Can I am getting your affiliate link to your host?
    I wish my website loaded up as fast as yours lol

Leave a Reply

Your email address will not be published. Required fields are marked *