Skip to main content

Storage classes in C

DEFINITION:- 

Storage class define the scope(visibilty) and life time of a variables or functions within a C program.Storage class are associated with the variables for describing the features of any variables or functions.

There are 4 types of storage classes:



  1. auto:- auto is the default storage class for all local variable(i.e the variable inside function).auto keyword is used to define the storage classes.





  1. register :- register is used to define the local variables that should be stored in a register instead of RAM(random access memory) , this means that unary operator (& or reference) can't applied.Register variables work fast than the variable stored in RAM.Register variable are used for looping.

  2. static:- it is the default storage classes for global variables.global static variable can be accessed in any part of the program.The default value is assigned 0 by the compiler.static keyword is used to define the static variable.

  3. extern:- the extern is used to feature a variables to be used from different blocks within the same program. for extern storage class , extern is used.to give a reference of a global variable that is visible to all the program files.


Comments

Popular Posts

CALL BY VALUE AND REFERENCE--

A function can be called by two types 1) Call By Value:-   when an original value is not modified , is known as call by value. In call by value the actual parameter(the parameter passed to function) is copied into the formal parameter(parameter receive by function). in this the value of each variable in calling function is copied into the corresponding dummy variable of the called function. the changes made to the dummy variable have no effect on the actual variable. Example:-   2)Call By Reference:-   when an original value is modified, is known as call by reference.in this a reference is used , denoted by &(symbol). we can use either pointer or reference for call by reference in this the address of the variable is passed into the function called by actual parameter. in this the memory allocation is same for both actual and formal arguments. Example:-   

Static Memory Allocation

Statement are of two types:- Declaration:- in which we declare the variable Action:- in which for,if-else,getch,printf,scanf etc are used. SMA(STATIC MEMORY ALLOCATION):-                                whenever we create a program,there is a line of declaration statement(or data type declarartion statement) such as int a;char b;etc. Due to this statement we create a variable a,now this variable is the example of SMA.SMA means how much memory is consumed by variable at the time of compiler,this decision is taken before the compilation. At the compile time these variable such as a and b does not having a memory.Memory is given when program is run i.e when object file convert into .exe file.But when program is run how much memory is taken by the variable is decided at the compilation time.This is known as SMA(Static Memory Allocation).   

Compilation Process in C

Compilation The conversion of source code into object code is known as compilation.This process is done with the help of compiler. below is a full diagram of showing how source code convert into software(i.e software development in c) Explanation:- Source code :- the c programming coding is known as source code. save your programe with .c extension then your file become source file for example in fig: sum.c is a source file in which source code is written to print a hello. Prerocessor :- first we need a preprocessor software to convert source file (i.e .c file).Preprocessor handle all those statement which is starting from # symbol. Header file :-  In our programe as seen clearly in sum.c we did not create any header file (i.e which start from # symbol) we just use it.Preprocessor add the content of header file in our source file and creates a new file this file same as our source file but only difference is that the header file removed from the new file which ...