Storage classes determine the scope and life time of a variable. Scope is defined as the region over which the defined variable is accessible. Lifetime is the time during which the value of a variable is allocated a space.
Storage classes are classified into 4 types:
1. Automatic 2. Register 3. Static 4. External
Automatic storage classes -- They are declared inside a function in which they are utilized. They are created when a function is called and exited when a function is exited. When no storage class is specified, it is the default storage class
Ex: main(){
int m=100;
function 1();
printf("%d",m);}
function1()
{ int m=10;
printf("%d",m);}
The above program displays the output
10
100
Because the variables are private to the function in which they are declared. So in main it is 100 and in function1 it displays 10.