Skip to main content

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:-


  1. 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.
  2. 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.
  3. 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 is in .i extension as above sum.i
  4. Compiler :- the new file (i.e .i extension file) is made by preprocessor. now this file is compiled by compiler.Compiler also creates a new file i.e object file means in .obj file. compiler are of different -2 types for every platform.
  5. Library files :- now we need a library files because in object file there are many code written which cannot understand by operating system but the meaning of those codes are present in library files.
  6. Linker :- now we need a linker. Linker link the library file into object file and creates a new file which is .exe file(i.e software).

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:-   

Type casting

type casting or type conversion  allows us to convert one data types into another.for type casting cast operator is required. Syntax:--      (type)expression or value; Example:       int f =9/4; //without type casting       o/p=2       float f=(float)9/4;  //with type casting       o/p=2.3 Type conversion are of two types: 1)Implicit Type Conversion:-  it is also known as automatic type conversion.When the type conversion is performed automatically by the compiler,such type of conversion is known as implicit type conversion. 2)Explicit Type Conversion:-  the type conversion performed by the programmer is known as explicit type conversion.which is done by cast operator as above mentioned.

Introduction to C

About C:- C is a high-level language . It was initially first developed by D ennis Ritchie in 1972. It was developed to overcome the limitation of previous language such as B,BCPL etc. It was developed for Unix operating System It inherits many features of previous language Features/Advantage:- Simple :- because it provide data types, library function etc. Machine Independent or Portable:- because it can be executed on different machine Procedural language:- Instruction in c program are executed step by step Structured programming language:- break the problem into parts It provide dynamic memory allocation , pointers etc. Speed:-It is faster than another programming language like java, python etc. Disadvantage of C:- It does not support oops concept in which inheritance, polymorphism, encapsulation etc. come. It does not support namespace concept It does not support constructor and destructor There is lack of excepti...